プロが教える店舗&オフィスのセキュリティ対策術

描画をしてもpaintComponent内でないとリサイズ時に消えてしまい安全じゃないことは知っていましたが、今回は逆のことが起きてしまいました。

親JPanelに子JPanelを追加(add(子))して、その後その子JPanelを消して(removeAll())別の子JPanelを追加(add(子))するとrepaint()をしても描画されません。
リサイズをすると描画されるのですが、リサイズをしなくても描画する方法があればご教示ください。



参考までに。
ゲームのタイトル画面を作るためにこの問題にぶつかりました。タイトル画面とゲーム画面を別にしようとしたためです。

A 回答 (1件)

コンポーネントの再配置を行っているなら、


repaint()メソッドではなく、revalidate()メソッドではないですか?
    • good
    • 0
この回答へのお礼

teketonさん、ご回答ありがとうございます。
試したところ問題なく再描画がされました。コンポーネントの状態の変化を画面に反映させる場合はrepaint()ではだめなんですね。ありがとうございます。

お礼日時:2014/02/21 22:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!