2013-10-20 40 views
0

我有一个Java应用程序,可以在Windows和OSX上运行。在某些情况下,它可能需要一段时间才能加载,因为它主要查看主目录内的目录(所以两级目录)。完成后,主GUI将显示,除非有任何错误,在这种情况下,将出现JOptionPane。为Java应用程序创建启动画面的最佳方法?

我想显示一个启动画面,直到GUI或消息显示,但我不知道什么是最好的方式来做到这一点。另外,我不确定如何创建启动画面 - 是否有人使用的程序?

+0

你可以看看这个[答案](http://stackoverflow.com/questions/16288303/best-example-for-creating-programmatically-splashscreen-with-text/16289376#16289376)或使用内置在Java中:http://docs.oracle.com/javase/tutorial/uiswing/misc/splashscreen.html –

+0

你是什么意思,你不知道如何创建图像和应用程序?你的意思是说你需要像Photoshop这样的东西? –

+0

@GuillaumePolet感谢您提供您提供的答案的链接。它看起来非常有帮助 - 我没有在搜索中遇到它。 – Andy

回答

0

在应用程序启动显示与图像的JOptionPane那是你的启动画面,同时触发一个线程来执行负载为你,当对其做隐藏与飞溅的窗格中,并显示您的主UI

+0

感谢您的回答。这就是我想要做的,但是我没有太多的线程经验,所以启动屏幕可以在单独的线程中启动,而确定何时隐藏启动屏幕的最佳方法是什么? – Andy

+0

你需要做线程上的负载来检查它何时完成,其他方式,因为你有一个飞溅图像(不是视频),不关心用户界面冻结,你可以显示飞溅做负载和隐藏飞溅而不使用线程 –

+0

你说得对。我刚刚尝试过,因为一切的本质,我不需要线程。感谢您的帮助 - 这是最简单的方式 – Andy

2

如果你说关于Swing应用程序,然后有一个Java教程关于这个问题:

对于JNLP推出Swing应用程序,该博客涵盖了改变JNLP闪屏:

我无法找到SWT应用程序的教程,但是这里有几个例子:


如果你问有关如何为您的闪屏创建图形/图像,有很多工具在那里创建图像,并建议一个是题外话堆栈溢出。

+0

感谢您的回答。我确实看到了Java教程,但它看起来有点模糊,我不确定启动屏幕何时会消失。但这些例子应该会有所帮助。 – Andy

+0

在第一个教程中,飞溅不会自发消失。当您的应用程序读取业务时,您需要在SplashScreen对象上调用close()。 –

+0

我刚刚看完整的代码,你说得对。我误解了一点API – Andy

相关问题