こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

java:guiプログラミングのボールの軌跡

javaのguiのプログラミングなのですが、ボールを動かし軌跡を残したいのです。repaintを使って、ボールを動かして行きながら軌跡を残すプログラムを作った所、ボールはちゃんと動いたのですが、軌跡は書いては消えて書いては消えてをくりかえしているようで、画面に残らないんです。解決方法をお教えください。

投稿日時 - 2011-04-12 17:44:35

QNo.6663497

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

Appletか何かで作っていますか?
repaint()を呼ぶとupdate()が呼ばれ、そこからさらにpaint()が呼ばれます。しかし、update()はpaint()を呼ぶ前に画面をクリアします。一度書いた軌跡が消されてしまうのはこのためです。
画面のクリアを防ぐためにはupdate()をオーバーライドしてpaint()だけを実行するように変えればいいです。
public void update(Graphics g) {
paint(g);
}

投稿日時 - 2011-04-16 09:27:19

ANo.2

「ボールの軌跡がランダム」ってどういうこと?
そして, 「計算できない」ものがなんで「表示できる」と思えるの?

「ボールの過去の位置」をつなぐなら当然できる. 「それまでにボールがあった位置」を覚えておけばいい. ただそれだけ.

投稿日時 - 2011-04-14 23:20:26

ANo.1

「ボールの軌跡」というのはすなわち
「それまでにボールがあったところ」
だよね.

だから,
「それまでにボールがあったすべての位置でボールを描く」
だけ.

投稿日時 - 2011-04-13 13:08:39

補足

ボールの軌跡がランダムで計算できないのです。
ボールの軌跡は線で表示したいです。

投稿日時 - 2011-04-13 23:01:48

あなたにオススメの質問