私は単純なゲームを作成しており、移動するたびにボードを再描画したいと考えています。したがって、move() を呼び出した後、次のことを実行したいと思います: (ちなみに、View はピースを保持する JComponent です。移動後にピースの数が変更されたため、再描画する必要があります)
for(View v : views){
v.repaint();
}
動いていない。repaint()単一のビューを呼び出すと、正常に動作します。paintImmediately、およびrevalidate、および...を使用してみupdateましたが、ループ内では何も機能しません。
何か案は?前もって感謝します。
編集:ウィンドウのサイズが変更されたときにrepaint()が呼び出されることを追加する必要があるため、ViewのpaintComponentメソッドが有効で機能することがわかります。ループから呼び出されていないだけです。デバッガーがループを通過するとき、repaint() に入らず、画面には何も起こりません。