これは漠然とした質問ですが、私は可能な限り明確にしようとします。私のJavaアプリを初めて起動すると、それはいくつかのファイルとディレクトリが存在するかどうかをチェックすると、インターネット接続をチェックしません。スイングコンポーネントをどのようにプリロードするか
このアプリケーションでは、ダッシュボードに移動することができます。ダッシュボードには、多くのSwingコンポーネントをバックグラウンドパネルに追加して追加する必要があります。これには時間がかかります。
私は、起動時の読み込みプロセス中に、アプリケーションがすべてのSwingコンポーネントImagesなどを読み込んで、ユーザーがコマンドを実行すると即座に表示されるようにする方法を知りました。
JButton = new JButton("blah");
が、私はそれはコンポーネントがまだ同時に複数の画像いっぱいSwingコンポーネントを追加することではないだろう、瞬時に表示されるように十分なだかわからない:
私はこのようなすべてのコンポーネントをロードすることができます上に見たようにすでに「ロードされていても」UIスレッドを遅らせる?
ありがとうございます!コンポーネントの
別々のスレッドを使用する場合は、Swingコンポーネントがスレッドセーフではないことを忘れないでください。あなたは、任意のコンポーネントツリーの更新を行うためにSwingUtilities.invokeLater'または '' invokeAndWait'を使用する必要があります。 –
問題は、既にローディング画面にコンポーネントがあるため、現在はセンターペインからコンポーネントを削除して新しいコンポーネントを追加する必要があります。ローディング画面のコンポーネントとコンポーネントをダッシュボードに追加した場合表示されているコンポーネントを目に見えないものにしても、完全に忘れてしまったことを追加するための –
良い点キャメロンの歓声:S。エピック - それはあなたが親コンテナで使用しているレイアウトの種類によって異なります。デフォルトのレイアウトを使用している場合はyesを使用しますが、絶対レイアウトを使用してください。これは、コンポーネントスペースを空のままにし、必要な場所に配置する必要があります。ポジションを相対的に設定する) –