2012-03-28 12 views
2

私のJComponentが再描画されない理由を絞ろうとしています。私がマウスを押して離したときに再描画することができますが、ドラッグでは動作しないということは奇妙です。 EventQueueを印刷するか、またはPaintEventが実行されたか、またはダンプされたことを確認する方法はありますか?ありがとう、ありがとう。JComponentがソフトウェアから再ペイントコールを受信して​​いるかどうかを確認するにはどうすればよいですか?

+1

あなたの問題を引き起こすコードの縮小バージョンを教えていただけますか?理想的には、ローカルでコンパイルして実行できるバージョンです。 – Irfy

+0

あなたのコードにはおそらくバグがあります。上記のirfyの勧告に同意します。私はpaintInをpaintComponentメソッドの中からやったことがありますが、時には助けになるかもしれませんが、ペイントやpaintComponentメソッド内にプログラムロジックがないとうまくいけば、他のメソッドをデバッグする方が良いと思います。 –

+1

dispatchEventメソッドをオーバーライドし、イベントクラス、ソースなどのコンソールにSyserrを渡すEventQueueをいつでもプッシュできます。 –

答えて

1

私が知っている以上に、EventQueueでジョブをプリントアウトする方法はありません。

本当にrepaint()を呼び出していますか?再描画を呼び出すと、コンポーネントが直ちにまたはタイムリーに再描画されることが保証されないことに注意してください。

私が推測することは、あなたがrepaintを呼び出す場合、問題はあなたが決してUIスレッドを放棄していない可能性があるということです。 GUIスレッドを待っていて解放しない場合、GUIは更新されません。

関連する問題