我有一个很奇怪的问题: 我有一个 Java 应用程序,它使用在不同线程中运行的“应用程序”(插件)。 大多数这些插件将由其他人编写,我无法控制代码。该应用程序需要永久连接到互联网,因为信息在服务器和应用程序之间不断传输。我想做的是有一个线程在后台运行,检查是否有互联网连接。如果连接断开,我希望整个应用程序(及其所有线程)暂停,显示一条消息,并在重新连接时恢复。我希望此对话框显示在所有其他对话框(模态或非模态)之上。我正在考虑诸如 Windows Vista 用户帐户控制警报之类的东西。
我该怎么做?
最佳答案
为了合理地解决这个问题,您需要使用 Java 6,因为以前的版本根本无法为您提供所需的模式粒度。
这里是modality options .
为了使其有效工作,您必须让每个插件遵守不使用 Toolkit 模式的契约(Contract)(默认行为是模式对话框锁定所有内容,以保持向后兼容性)。应用程序模式似乎非常适合您,但我不认为您可以在 Java 中实现它。据我所知,这似乎取决于 JVM 供应商。
关于java - 在Java中的其他模式对话框之上显示另一个模式对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1418023/