Java SWT ModifyListener设置一个布尔变量

时间:2014-04-18 20:39:56

标签: java swt

我正在用Java SWT编写一个小型文本编辑器。 如果修改了对象“Text”的文本字段,则Listener必须将布尔值设置为true,以便更改文本字段。当我想退出编辑器时,如果文本字段被更改,它应该让我保存。但布尔变量仅在其ModifyListener中更改其值? 如果我按下退出按钮,selectlistener会做出反应,它应该让我保存,但它没有要求。

我的失败是什么?

public class ModifyListenerTextField implements ModifyListener {

 private Boolean changedTextField;

 public ModifyListenerTextField(Boolean changedTextField){
     this.changedTextField = changedTextField;
 }

 @Override
 public void modifyText(ModifyEvent arg0) {
     if(!changedTextField.booleanValue()){
         changedTextField = Boolean.TRUE;
     }
 }

}

1 个答案:

答案 0 :(得分:-1)

这很简单。你不需要实现任何东西。您可以根据遗嘱更改以下代码

JTextField field = new JTextField();

field.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                booleanVar = true;
            }
        });