作者kkman0120 (kk)
看板java
标题[问题] 让两个JFrame互斥(一次只能Enabled一个Frame)
时间Sun Jun 7 00:44:17 2009
我目前有两个JFrame a跟b
a是主要的Frame
是整个程式流程的主Frame...
我想在某个事件发生後才呼叫b这个frame
然後b被呼叫时a不可以被使用...
等到b视窗被关闭後才可以继续使用a
我是有在b被唤起的那段程式码上下各用a.setEnable(false) 跟setEnable(true)
去包住b的那行程式码
可是这样还是没有用
因为b被唤起的时候
他马上就直接跑下去执行setEnable(true)了..所以等於没效
请问像我这样需求来说应该要怎样设计才对呢
就我想问说Frame 与 Frame有没有优先权的api可以使用呢?
当b在用时a不可以被使用..
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.45.30.197
1F:→ zeat:等b也发生某个事件後再dispose b啊 06/07 00:47
2F:→ kkman0120:我原本就这样设计 但是a还是一样会被setEnabled... 06/07 00:52
他两个Frame好像就是独立作业一样
不管b有没有被dispose 他都还是会往下跑到setEnable(true)那行 T_T
※ 编辑: kkman0120 来自: 114.45.30.197 (06/07 00:53)
※ 编辑: kkman0120 来自: 114.45.30.197 (06/07 00:54)
※ 编辑: kkman0120 来自: 114.45.30.197 (06/07 01:07)
3F:推 sbrhsieh:通常会使用 modal dialog 来制作 b 的部份。 06/07 01:10
4F:→ kkman0120:请问一下modal应该怎麽做呢??这样做就可以达成需求嘛? 06/07 01:19
5F:推 AI3767:b 由原本的JFrame 改用JDialog 06/07 13:09
6F:→ kkman0120:我有改弄JDialog 但是还是一样的效果 是少了什麽嘛 06/07 14:36
7F:推 zeat:那个啊, 你原来的写法不改... 应该用什麽都是一样的结果吧... 06/07 14:45
8F:推 zeat:a->unEnable a->new b->发生某个事件->dispose b->enable a 06/07 14:48
9F:→ kkman0120:我原来的方式就跟楼上写的一样阿@@ 改成JDialog还是不行 06/07 15:23