[問題] 請問,有關paint()執行的順序

看板java作者 (讓我備上吧﹒orz...)時間19年前 (2006/05/31 18:04), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
各位大大,大家好,我是java新手… 如果有人問過了,對不起,我一定會馬上回來d掉的....>< 先說聲抱歉.... 我想要把一行字,造成在畫面上移動的樣子 那我的想法是,每次更新印出的位置,然後再repaint()一次 我的程式碼如下 import java.applet.Applet; import java.awt.*; import java.awt.event.*; import java.lang.*; /* <applet code = slide.class width=600 height=600> </applet> */ public class slide extends Applet implements ActionListene { Button button1; int i=60; String Sa = "hello java"; public void init() { button1 = new Button("click me"); add(button1); button1.addActionListener(this); } public void paint(Graphics g) { g.drawString(Sa,i,100); System.out.println("CALL paint()"); } public void actionPerformed(ActionEvent e) { if(e.getSource() == button1) { while(i<160) { ++i; repaint(); System.out.println(i); } } } } 那我想,當按下button後,應該會印出 CALL paint() 61 CALL paint() 62 CALL paint() . . CALL paint() 160 可是,實際上卻出現 61 62 . . . 160 CALL paint() 那這和我原本希望的不一樣,為什麼,它會在for loop的最後一次才會 呼叫paint()這個method呢? 因為我想了一陣子,也沒看過書上提過… 所以才po上來,請教各位大大 謝謝.... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.117.102.78
文章代碼(AID): #14VMegpu (java)
文章代碼(AID): #14VMegpu (java)