我有一个包含不同组件的框架(jtextField,jcomboBox,jspinner等)
当用户关闭框架时,如果用户更改某些内容而未保存,我想要一条警告消息“您有未保存的数据”。
除了保留一个脏布尔变量并更新它之外,还有其他方法可以做到这一点。
喜欢在jquery(我从网上搜索)
$(document).ready(function() {
$('input:not(:button,:submit),textarea,select').change(function () {
warnMessage = "You have unsaved changes on this page!";
});
$('input:submit').click(function(e) {
warnMessage = null;
});
});
提前致谢
答案 0 :(得分:1)
以下是Swing中如何执行此操作的概述:
在附加到组件模型的侦听器中,在模型更改时设置boolean
;例如在DocumentListener
中设置documentChanged = true
。
添加WindowListener
;在windowClosing()
处理程序中,选中documentChanged
。
如果有更改,请使用JOptionPane
询问用户该怎么做。