作者TWTRubiks (阿哲)
看板java
标题[问题] 如何使用drawLine(用回圈)
时间Sat Jan 19 14:19:45 2013
小弟我遇到了一个小问题,我想要画一个座标(表示刻度)
因为每个刻度的间隔都会一样,一个一个写没问题(不过很累)
所以我打算使用回圈写
但是我用回圈写遇到了一个问题
就是当我的x>10时,那个刻度就自己消失了,
请问我有甚麽办法能改善?! (目的是希望把红色那一大串变成绿色那样)
private x=0;
public void paint(Graphics g) {
Insets ins = getInsets(); // 取得边线尺寸
g.setColor(Color.white); // 填入背景色彩
g.fillRect(ins.left, ins.top,
getWidth()-(ins.left+ins.right),
getHeight()-(ins.top+ins.bottom));
g.setColor(Color.BLACK);
g.drawLine(30,50,1030,50);
while( x<=10){
g.drawLine(a,50,a,55);
a=a+100; x++;
}
g.drawLine(30,50,30,55);
g.drawLine(130,50,130,55);
g.drawLine(230,50,230,55);
g.drawLine(330,50,330,55);
g.drawLine(430,50,430,55);
g.drawLine(530,50,530,55);
g.drawLine(630,50,630,55);
g.drawLine(730,50,730,55);
g.drawLine(830,50,830,55);
g.drawLine(930,50,930,55);
g.drawLine(1030,50,1030,55);
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.64.91.231
1F:推 pupuliao:感觉 x 有点多余 直接用 a 当作条件判断就好了啊 01/19 16:01
2F:推 Shihsuang:在开始画之前要先把x归零?? 01/19 17:05
因为我还有再写一个 repaint ,不过刻度当回圈结束就会消失了~!
我要想请问如何让刻度不要消失
还是说我该把完整的程式贴上来?!
3F:→ PsMonkey:repaint 机制问题,要贴 code 之前请先确认你懂你的 code 01/19 22:22
版主大~! 这其实是我们考试的一个题目~! (不过已经考完了)
我只是再想办法把成次简化一点
http://i.minus.com/irUWfe72iVEsv.png
就是使用一个timer让那个蓝色的每秒跳一次
不过现在我的问题是当我把刻度那个改回圈,跑一下就会消失了
我的问题是如何让那个刻度不消失
※ 编辑: TWTRubiks 来自: 118.171.71.248 (01/19 23:33)
4F:→ gp123:x如果只是单纯在repaint中使用,宣告为类别成员是无意义的 01/25 15:17
5F:→ gp123:把x宣告在repaint中,并初始为0看看 01/25 15:20