java打开新窗口,原窗口不可操作,关闭新窗口后,原窗口才可操作
2个回答
展开全部
对于自定义窗体来说,最简单直接的做法就是让新窗体继承javax.swing.JDialog(对话框属于顶级窗口,跟JFrame同级),在创建该窗体后加上setModalityType()就可实现打开新窗口后原窗口不能动作,关闭新窗口后方可动作的操作。
NewFrame nf = new NewFrame(); // 继承JDialog的窗体类
nf.setModalityType(Dialog.ModalityType.APPLICATION_MODAL); // 设置模式类型。
// 参数 APPLICATION_MODAL:阻塞同一 Java 应用程序中的所有顶层窗口(它自己的子层次
// 结构中的顶层窗口除外)。
nf.setVisible(true);
P.S.. setModalityType()只有JDialog类才有。
非要用JFrame类的话,目前可行的只有设置setEnable(false),效果一样。但对于多个自定义的窗体类不在同一个类文件中时操作起来相对不友好。需进行监听操作以‘唤醒’窗体。
2013-08-03
展开全部
JFrame frame=new JFrame();JDialog dialog = new JDialog(frame, "Test", true);这样就行,不懂再问
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询