gpt4 book ai didi

java - 仅当整个 UI 启动时才运行线程

转载 作者:行者123 更新时间:2023-12-01 04:51:48 26 4
gpt4 key购买 nike

我只想在整个 UI 正常运行时运行线程,即。所有组件的paint()已完成。我尝试使用 SwingUtilities.invokeLater(),但线程仍然在整个 UI 启动之前或当所有组件的 paint() 未完成时运行。

可能吗?

谢谢。

最佳答案

无法知道整个 UI 何时启动,主要是因为您编写了自己的众多组件,这些组件可能需要很长时间才能加载。

SwingUtilities.invokeAndWait 。但时机将是一个问题。从某种意义上说,一旦您确定已经调用了设置 UI 的初始化代码,您就必须调用它。

一种方法可能是有一个检查标志。假设您有 5 个主要组件,每个组件一旦加载就会设置自己的检查标志(或者您可以使用持有该标志的 commons 类)。您的线程将继续等待所有 ckeckflags,然后继续。

您也可以使用 CountdownLatch,但我不推荐它。保持简单。

关于java - 仅当整个 UI 启动时才运行线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14826564/

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