javax.swing.timer
のアニメーションを作成しても正常に動作しているようです。"javax.swing.timer"を停止してもアニメーションが一時停止しない
しかし、アニメーションは永遠に進行しているので、timer.stop()
メソッドを追加することにしました。私は円は(350、200)の位置に達したときに停止するアニメーションを期待してい
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.RED);
g.fillOval(xGrid, 200, 50, 50);
t.start();
}
public void actionPerformed(ActionEvent event) {
if (xGrid >= 350) {
t.stop();
}
xGrid++;
repaint();
}
:
は、ここでは、コードの小片です。
しかし、そうではありません。私がプログラムを実行すると、以前と同じように出力され、アニメーションは少し遅くなります。
これは非常に混乱しています。だれでも助けてくれますか?
すべてのヘルプは途方もなくあなたのactionPerformed()
実施スケジュールでrepaint()
への呼び出しpaintComponent()
に後で呼び出し、
実行可能な例を提供してください([SSCCE](http://sscce.org))ので、私たちはあなたの行動を再現することができます。 –
なぜ 'paintComponent()'で 'start()'を呼びますか? – trashgod