JPanel
にはpaintComponent()
の機能があります。私はそれを一度呼び出すと、別のJButton
をクリックするとフラグがいくつか設定され、フラグが設定された後に少し違うことになるので、この関数を再度呼び出すことにします。JPanelグラフィックスのクリアと再ペイント?
ここに私が思っているのは、どうすれば既存のものをpaintComponent
からクリアするのですか?再描画するには、paintComponent
に再度電話するだけですか?
現在、私は次のことをしようとしている:塗料・コンポーネントで
flag2 = true;
repaint(); //I expect (want) paintComponent to be called again
、私は次のようなものを行う:
if (flag2==true) {
g.drawRect(...);
} else {
g.drawLine(...);
}
しかし、私は何に問題があるようにテストされて、それはそうですやって
ありがとうございました。
paintComponentメソッド内からrepaint()を呼び出すのではないですか? repaint()コールがリフレッシュするパネルに関連付けられていることを確認してください。 (例:myPanel.repaint())? –