问题描述
我创建了一个使用 JFrame 的 GUI.我应该如何使它成为模态的?
I have created one GUI in which I have used a JFrame. How should I make it Modal?
推荐答案
如果你想使窗口模式化,最好的办法是使用 JDialog 而不是 JFrame.查看在 Java 6 中引入 Modality API 的详细信息信息.还有教程.
Your best bet is to use a JDialog instead of a JFrame if you want to make the window modal. Check out details on the introduction of the Modality API in Java 6 for info. There is also a tutorial.
这里是一些示例代码,它将在 JDialog
中显示 JPanel 面板
,它是 Frame parentFrame
的模态.除了构造函数之外,这遵循与打开 JFrame
相同的模式.
Here is some sample code which will display a JPanel panel
in a JDialog
which is modal to Frame parentFrame
. Except for the constructor, this follows the same pattern as opening a JFrame
.
final JDialog frame = new JDialog(parentFrame, frameTitle, true);
frame.getContentPane().add(panel);
frame.pack();
frame.setVisible(true);
更新 Modality API 链接 &添加了教程链接(向@spork 致敬).
updated Modality API link & added tutorial link (nod to @spork for the bump).
这篇关于如何在 Swing java 中制作 JFrame 模态的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!