如何同时显示闪屏和我的JFrame?
我正在处理闪屏。我设法上了一堂课。下面是一个显示闪屏的类。我的问题是,如果我从JFrame调用这个类并运行,JFrame和Splash Screen同时运行,并且在Splash Screen应该持续的持续时间之后,它们都被关闭。如何使它们同时显示?
非常感谢
public class Splash extends JWindow {
AbsoluteLayout abs;
AbsoluteConstraints absImage, absBar;
ImageIcon image;
JLabel label;
JProgressBar bar;
public Splash() {
abs = new AbsoluteLayout();
absImage = new AbsoluteConstraints(0, 0);
absBar = new AbsoluteConstraints(0, 210);
label = new JLabel();
image = new ImageIcon(this.getClass().getResource("anime.gif"));
label.setIcon(image);
bar = new JProgressBar();
bar.setPreferredSize(new Dimension(350,10));
this.getContentPane().setLayout(abs);
this.getContentPane().add(label, absImage);
this.getContentPane().add(bar, absBar);
new Thread() {
public void run() {
for (int i = 0; i < 100; i++) {
bar.setValue(i);
try {
sleep(80);
} catch (InterruptedException ex) {
Logger.getLogger(Splash.class.getName()).log(Level.SEVERE, null, ex);
}
}
System.exit(0);
}
}.start();
this.pack();
this.setLocationRelativeTo(null);
this.setVisible(true);
}
}
解决方案
您认为
System.exit(0);
会出现在您的节目中吗?这是一种关闭窗口的大锤方法,因为它将导致JVM退出,关闭它正在运行的所有内容。
您是否考虑过使用Java Swing提供的SplashScreen对象?
相关文章