怎样让弹出的JDialog窗口一直处在最前端?

davidkahn 2004-04-18 10:34:27
只要不关闭它,就不能对后面的窗口进行能够操作
...全文
721 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Acylas 2004-07-20
  • 打赏
  • 举报
回复 1
dlg = new JDialog(this);//this指当前的窗口,比如frame里面弹出dialog,那this就是就是这个frame
dlg.setModal(true);
这样做就保证dlg一直在frame前面,并且是模态
flywind63 2004-07-20
  • 打赏
  • 举报
回复
这是因为在生成JDialog对象时:
第一、必须设置为模态窗口;
第二、必须指定其父窗口,而且父窗口不能为null!
kmonkey 2004-07-20
  • 打赏
  • 举报
回复
要用到调用本地方法,你在www.chinajavaworld.com上面找找,sunking有解答的
mail25 2004-07-20
  • 打赏
  • 举报
回复
楼上的兄弟说的对,我也发现这个问题了,但我还没有好的方法可以解决!
icystone 2004-07-20
  • 打赏
  • 举报
回复
模态还是模态,在刚刚弹出时候是正常的,也就是说不能切换到父窗口。可是一旦和其他的程序切换之后就会发现父窗口跑道前面来了,但是不可使用因为已被中断,只有把对话框切换过来才可以操作!
mail25 2004-07-20
  • 打赏
  • 举报
回复
在构造器里就可以设置啊!
boolean true 模态窗口(楼主想要的东西) false非模态窗口
----------------------------------------------------------------------
public Dialog(Frame frame, String title, boolean modal) {
super(frame, title, modal);
try {
jbInit();
pack();
}
catch(Exception ex) {
ex.printStackTrace();
}
}
icystone 2004-07-20
  • 打赏
  • 举报
回复
对呀,虽然可以中断当前的操作,但是还会跑到后面去。
似乎这是一个bug,也许是我的见识太少。听听高手的意见!!!
oldersky 2004-07-20
  • 打赏
  • 举报
回复
setModel(true)好象有问题的,当打开另外一个程序,再回到原程序,主窗口还在,对话框又跑后面去了,我也不知道怎么回事
xiachedan 2004-07-20
  • 打赏
  • 举报
回复
我做的QQ是用DLL实现这一功能的!!!
cyicecream 2004-04-19
  • 打赏
  • 举报
回复
setModel(true);
minghuitian 2004-04-19
  • 打赏
  • 举报
回复
setModel(true);
minghuitian 2004-04-19
  • 打赏
  • 举报
回复
setModel(true);
zhang21cnboy 2004-04-19
  • 打赏
  • 举报
回复
setModel(true);
Joyyu 2004-04-19
  • 打赏
  • 举报
回复
构造Dialog实例时指定它的父窗口对象
JDialog j = new JDialog(your base panel);

62,622

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧