yuu_nkjm blog


2008-12-16(Tue) 編集

[Java][Scrap] JComponentのpaintとrepaint

描画そのものは(文字の描画も含め)、JComponentまたはJPanelをextendsした自作クラスのpublic void paintComponent(Graphics g)メソッドに書きます。描画の経時変化(アニメーション)は、javax.swing.Timerクラスを作り、その actionPerforemed()メソッドの中でpaintComponent()メソッドが使っているパラメータの値を適宜変えて、そのパネルオブジェクトのrepaint()をコールします。	
質問があいまいなので何とも言えないけど
同じような質問が定期的にあるので推測で回答します。
まず JComponentのJavaDoc、repaint には下記のようにかかれてます。
------------------------------------------
コンポーネントが表示されている場合に、
指定された領域をダーティーリージョンリストに追加します。
コンポーネントは、現在保留されているすべてのイベントが
ディスパッチされたあとに再描画されます。 
------------------------------------------
つまりrepaintは再描画処理の予約であり再描画処理そのものではありません。

次状態の計算,描画用データの更新,repaintの呼び出しをどう組み合わせれば良いのか,まだ勘がはたらかない.


トップ «前の日(12-15) 最新 次の日(12-17)» 追記 設定
2006|01|06|12|
2007|06|09|
2008|01|03|04|06|07|08|09|10|12|
2009|01|02|05|06|07|08|10|11|12|
2010|03|04|05|06|07|08|09|10|11|
2011|01|02|03|04|05|06|07|08|09|11|12|
2012|01|02|04|06|07|08|10|11|12|
2013|01|02|03|07|08|10|11|12|
2014|01|02|04|05|06|07|08|09|10|11|
2015|01|02|07|11|12|
2016|01|03|05|07|08|09|