如何在Swing java中创建JFrame模型我创建了一个GUI,其中我使用了JFrame。我该如何制作Modal?
3 回答

慕标琳琳
TA贡献1830条经验 获得超9个赞
如果你想制作窗口模态,最好的办法是使用JDialog而不是JFrame。有关信息,请查看有关在Java 6中引入Modality API的详细信息。还有一个教程。
下面是一些示例代码,用于将显示JPanel panel
在JDialog
其中是模态的到Frame parentFrame
。除了构造函数之外,它遵循与打开a相同的模式JFrame
。
final JDialog frame = new JDialog(parentFrame, frameTitle, true);frame.getContentPane().add(panel);frame.pack();frame.setVisible(true);
编辑:更新了Modality API链接并添加了教程链接(向@spork点头了解)。

偶然的你
TA贡献1841条经验 获得超3个赞
您可以创建一个传递对父项的引用的类,JFrame
并将其保存在JFrame
变量中。然后,您可以锁定创建新框架的框架。
parentFrame.disable();//Some actionsparentFrame.enable();

拉莫斯之舞
TA贡献1820条经验 获得超10个赞
只需更换JFrame
到JDialog
课堂
public class MyDialog extends JFrame // delete JFrame and write JDialog
然后写入setModal(true);
构造函数
之后,您将能够在netbeans中构建表单,并且表单将变为模态
添加回答
举报
0/150
提交
取消