コードがないと答えるのは難しいかもしれませんが、問題はどのコードを投稿すればよいかわからないことです。私の問題は、XMLファイルをロードし、それをアンマーシャリングしてから、ロードされた値のArrayListを繰り返して、JScrollPane内のJPanelに配置されるJLabel配列を再入力すると、処理全体が完了するまでグラフィックが更新されないことです。これは、JProgressBarで開くJFrameを作成したときに発見しました。すべてが完了するまで、バーはペインフレームに表示またはペイントされません。プログレスバーにデコードの進行状況を表示させようとしているので、これは目的に反します。それをデバッグしているときに、コードを分離すると(実際にファイルをロードしてアンマーシャリングを実行することを除いて)、バーが機能することを発見しました。それは私を見て、個々のJLabelが追加され、サイズが変更されたときに、絶え間ない再描画にもかかわらずすべてのプロセスが完了するまで、言及された他のコンポーネントが更新されていないことに気付きました。私はまだJAVAを初めて使用するので、このループが進行している間、これらのコンポーネントのすべてがグラフィカルに更新されない理由を誰かが知っているかどうか尋ねたいと思いました。
注として、ループでは、add関数とrepaint関数を呼び出して、新しくデコードされたJLabelをペインに配置しますが、バーのようにすべてが完了するまで表示されません。そして、これはすべて単一のスレッドを実行しています(独自のスレッドにスピンされるJProgressBarを除く)。ll
必要に応じてコードを投稿できます。必要なコード(つまり、XMLデコーダーとループ、JLabelの追加とサイズ、インスタンス化など)を教えてください。