gpt4 book ai didi

java - 为 Swing 小程序/应用程序创建自定义模式对话框

转载 作者:行者123 更新时间:2023-11-30 06:37:36 25 4
gpt4 key购买 nike

我正在编写一个 Swing 应用程序,它需要作为浏览器中的小程序或作为独立应用程序运行,即它可能包含在 JFrame 或 JApplet 中。

在这种情况下,我想向用户显示一个自定义模式对话框(即具有自定义布局和逻辑的复杂对话框,而不仅仅是一个简单的 JOptionPane 提示)。如果对话框是完全包含在应用程序窗口中的轻量级组件,那很好。

同时,应用程序中会发生后台处理(网络线程、动画等)。这需要在显示对话框时继续。

实现这个的最佳方法是什么?

最佳答案

看看 JDialog。如果您将其设置为模态,它将运行自己的事件处理以保持 GUI 最新,同时捕获鼠标和键盘事件供自己使用。

我查看了它使用的代码,它确实不是您想要尝试重新发明的东西。

如果您以非模态方式运行它,您可能需要添加一个监听器,以便在它最终关闭时调用。这是通过 addWindowListener 和覆盖 windowClosing 的 WindowAdapter 完成的。

至于构造函数的owner参数,我用

    Window w = (Window) SwingUtilities.getAncestorOfClass(Window.class, comp);

其中 comp 是一些可见的组件。

之所以有效,是因为总有一个顶级窗口,无论是作为小程序还是应用程序运行。

关于java - 为 Swing 小程序/应用程序创建自定义模式对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3250725/

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