作者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
推 pupuliao:感覺 x 有點多餘 直接用 a 當作條件判斷就好了啊 01/19 16:01
推 Shihsuang:在開始畫之前要先把x歸零?? 01/19 17:05
因為我還有再寫一個 repaint ,不過刻度當迴圈結束就會消失了~!
我要想請問如何讓刻度不要消失
還是說我該把完整的程式貼上來?!
→ PsMonkey:repaint 機制問題,要貼 code 之前請先確認你懂你的 code 01/19 22:22
版主大~! 這其實是我們考試的一個題目~! (不過已經考完了)
我只是再想辦法把成次簡化一點
http://i.minus.com/irUWfe72iVEsv.png
就是使用一個timer讓那個藍色的每秒跳一次
不過現在我的問題是當我把刻度那個改迴圈,跑一下就會消失了
我的問題是如何讓那個刻度不消失
※ 編輯: TWTRubiks 來自: 118.171.71.248 (01/19 23:33)
→ gp123:x如果只是單純在repaint中使用,宣告為類別成員是無意義的 01/25 15:17
→ gp123:把x宣告在repaint中,並初始為0看看 01/25 15:20