今天要做SWING的窗体关闭保存确认,客户要求像WORD一样
首先,说SWING窗体关闭的实现,两种方法
1:在windowClosing事件进行处理
注意点:默认情况都是
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
这里要替换成setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
2:捕获窗口的相应事件进行处理(AWTEvent.WINDOW_EVENT_MASK)
此处通过捕获WINDOW_EVENT,判断如果是关闭事件,进行提示
直接上代码,以下为1.2整合之后的程序
大家可以看一下,实践证明,先是processWindowEvent捕获到了关闭操作,之后才是windowClosing事件
-------------------------------------
结合JAVA实践,业务功能实现过程大体过程如下:
1. 用户是否没有保存Flag:文档有变化,设为true / 新打开重新初始化 / 保存时重新初始化
2. 提示保存时,点OK的时候,要判断是否保存成功了,如果用户点了取消则不关闭窗体
参考资料:http://www.javanb.com/j2se/1/7942.html
http://topic.youkuaiyun.com/t/20051204/17/4437180.html
望大家指点