これは私の 3 番目の SO の質問です。もう一度助けてください... アプレットにスプラッシュスクリーンを配置したいです。その際、JWindow コンポーネントを使用しました。スタンドアロンの Java アプリケーションのスプラッシュスクリーンを作成する際に既に使用していたので、アプレットでも動作すると思いました。問題は、それが機能しないことです。Jwindow はアプレットで使用できますか? これを達成するためのより良い方法はありますか?tnxたくさん!
アプレットの start メソッドで LoadingScreen オブジェクトをインスタンス化しますか? コードは次のとおりです。
public class LoadingScreen extends JWindow{
private static final long serialVersionUID = 1L;
private Image image1;
private ImageIcon icon1;
public LoadingScreen(){
//image = Toolkit.getDefaultToolkit().getImage("WebContent/images/loadbar.gif");
image1 = getImage(getCodeBase(), "images/loadbar.gif");
icon1= new ImageIcon(image1);
setSize(icon1.getIconWidth(), icon1.getIconHeight());
setLocationRelativeTo(null);
setVisible(true);
try{
//Make JWindow appear for 5 seconds before disappear
Thread.sleep(5000);
dispose();
System.exit(0);
}catch(Exception exception){
exception.printStackTrace();
}
}
public void paint(Graphics g){
super.paint(g);
g.drawImage(image1,0,0,null);
}
}
アップデート!問題が解決しました。アプレットの開始メソッド内の静的な Thread.sleep メソッドの呼び出しは、リソース (画像) の読み込みを停止します..それが表示されない理由です。実際のカウントを行うために別のタイマースレッドを作成することで修正されました...誰もが知っているように...:)