摇摆中未保存更改的警报消息

时间:2014-04-21 07:03:54

标签: java swing

我有一个包含不同组件的框架(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;
    });
});

提前致谢

1 个答案:

答案 0 :(得分:1)

以下是Swing中如何执行此操作的概述:

  • 在附加到组件模型的侦听器中,在模型更改时设置boolean;例如在DocumentListener中设置documentChanged = true

  • 添加WindowListener;在windowClosing()处理程序中,选中documentChanged

  • 如果有更改,请使用JOptionPane询问用户该怎么做。