父JFrame与子JFrame如何处理?
请问各位大虾,如果在一个父JFrame创建了一个子JFrame,而我想消除父JFrame但是要求子JFrame继续允许,也就是窗口跳转问题请问如何做?
我要求父JFrame彻底的从内存中消除,包过线程表里,即只有子JFrame运行,谢谢赐教~!!
问题点数:40、回复次数:12Top
1 楼dudee()回复于 2006-05-02 11:43:59 得分 5
用内部窗口吧.同是多个JFrame这种做法没做过.感觉上父JFrame关闭了子JFrame也同时会被关闭.父JFrame隐藏不行吗.Top
2 楼rogina(晓宇)回复于 2006-05-02 13:31:22 得分 0
隐藏了还是会占用内存而且是毫无用处的占用内存,这点我无法容忍!Top
3 楼heronce(一户侯)回复于 2006-05-02 13:44:46 得分 5
JFrame.dispose()Top
4 楼syhan(藏书人)回复于 2006-05-03 23:42:23 得分 5
似乎不行的说Top
5 楼micro1984(小嘴看世界)回复于 2006-05-04 15:59:43 得分 5
dispose()可以注销掉
Top
6 楼diannaomingong(电脑民工)回复于 2006-05-05 02:06:46 得分 8
首先调整它们的耦合关系,想法把它们的父子关系改变
不要让子Frame的存在非要依赖父Frame,让父Frame只是给些生成子Frame的需要用的参数
把子Frame作为专门的一个对象处理,比如你可以让子Frame从xxx.class里面生成,在父Frame里面弄出xxx 的一个实例对象,该对象会生成个子Frame,然后给父Frame的关闭事件中写父Frame.dispose(),关闭父Frame就很干净了
Top
7 楼bbflyerwww()回复于 2006-05-05 09:09:34 得分 0
楼上说得有理:)Top
8 楼rogina(晓宇)回复于 2006-05-06 00:39:39 得分 0
按楼上所说,如果子JFrame正在运行,而父JFrame用dispose()注销后,如果此时子JFrame也用dispose()注销掉,就会发现所有窗口都不见了,可进程还是开着,也就是这个程序还是活的,所以我觉得这个dispose()似乎有些问题。Top
9 楼ljk963(漂流瓶)回复于 2006-05-09 13:22:56 得分 6
我是菜鸟 我认为 为子窗体单独创建一个线程 用这个线程创建窗体 父窗体调用这个线程 父窗体dispose()后 是否能满足楼主的需要?当然在关闭子窗体的时候可以结束线程。不知道我的想法是否可行 高手指点Top
10 楼shendl(良少)回复于 2006-05-09 23:53:30 得分 3
Java程序的入口点是Main()方法。 在Main方法中,我们生成的若干个JFrame都只是平等的对象。 dispose()任何一个窗口,都不会对其他的窗口产生影响。
这样不就行了! 让各个JFrame对象都在Main方法中生成。Top
11 楼dangerboy_dx(dangerboy_dx)回复于 2006-05-10 09:39:29 得分 3
对啊。。。让所谓的父子关系只是程序逻辑上的关系。实际上采用平行的关系。
这样关掉任何一个窗口都不会对其产生影响了Top
12 楼rogina(晓宇)回复于 2006-05-10 15:37:04 得分 0
大哥们,程序设计可不是能事先在main里定义好所需要的窗口的,我想追求关闭了的窗口不在占用任何资源,不知可否实现?Top




