gpt4 book ai didi

java - 在事件调度线程中显示 JWindow

转载 作者:行者123 更新时间:2023-11-29 04:00:30 28 4
gpt4 key购买 nike

我想要做的是在我的程序加载某些内容时出现一个小的初始屏幕。这是我的:

SplashScreen.showSplashScreen();
// Do stuff that takes time.
SplashScreen.hideSplashScreen();

showSplashScreen() 方法所做的就是在屏幕中间创建一个新的 JWindow 并使其可见。

现在这段代码是从事件调度线程调用的,所以当调用 showSplashScreen() 方法时,在线程完成之前我看不到 JWindow,到那时,我不需要窗口了。在我等待的时候显示这个闪屏的最佳方式是什么?

最佳答案

不确定这是否是“最佳方式”,但我之前使用的一种机制是在 EDT 以外的线程上进行初始化,但使用 SwingUtilities.invokeAndWait 显示启动画面.这样,即使您的初始化速度很快(如果您希望如此),您至少也能看到启动画面。

所以在你的初始化线程上,你去:

SwingUtilities.invokeAndWait( /* Runnable to show splash screen */ );

// Do stuff that takes time.

SwingUtilities.invokeLater( /* Hide splash screen, display main GUI */ );

关于java - 在事件调度线程中显示 JWindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3889156/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com