2013-05-05 108 views
0

我有简单的批处理文件的代码,这是工作:如何从批处理文件中暂停Java启动画面?

set path=%path%;C:\Program Files (x86)\Java\jdk1.7.0_05\bin 
javac C:\Users\Ian\Desktop\batchFileTest\GUI.java 
java -splash:images/splashImage.jpg GUI 

然而,只需要像1秒我的GUI类文件加载,然后在启动画面立即关闭并启动程序。

我想使飞溅屏幕等待5秒钟。我的想法是先执行闪屏类文件,使用TIMEOUT,然后执行类文件是这样的:

set path=%path%;C:\Program Files (x86)\Java\jdk1.7.0_05\bin 
javac C:\Users\Ian\Desktop\batchFileTest\GUI.java 
java -splash:images/splashImage.jpg 
TIMEOUT 5 
java GUI 

这不能正常工作或者。启动画面然后显示几毫秒并立即关闭。然后命令行等待5秒钟,然后程序启动。

有关如何从批处理文件正确执行此操作的任何想法?

+1

您可以通过使用未修饰的展现自己的启动画面'JWindow'。但为什么你想让你的用户等待的时间比他们需要使用你的应用程序更长? :-) – 2013-05-05 01:49:16

+1

[Javadoc](http://docs.oracle.com/javase/7/docs/api/java/awt/SplashScreen.html)表示,在显示第一个应用程序窗口后,启动画面会自动关闭。也许你可以[延迟](http://docs.oracle.com/javase/tutorial/essential/concurrency/sleep.html)在你的'public static void main'方法中显示你的第一个窗口,如果你真的想要做到这一点。 – 2013-05-05 01:54:29

+0

感谢@Greg的链接!我在这里发布了一个使用你的建议的答案,我在这个类的主要方法中使用'Thread.sleep',在splash-screen之后调用。 – 2013-05-05 02:31:18

回答

1


感谢格雷格在这里,我有一个解决方案,我使用Thread.sleep延迟主屏幕的闪屏。


这里是批处理文件:

set path=%path%;C:\Program Files (x86)\Java\jdk1.7.0_05\bin 

javac C:\Users\Ian\Desktop\batchFileTest\GUI.java 

java -splash:images/splashImage.jpg GUI 


...这里是main方法的类:

class GUI { 
    public static void main(String[] args) { 

    try { 
     Thread.sleep(5000); // the parameter is in milliseconds 

    catch(InterruptedException e) { 
     System.out.println(e.getMessage()); 
    } 

    /* 
    * do whatever stuff here 
    */ 
    } 
} // end of GUI