更改 TextField 值而不触发 TextListener

sin*_*rix 4 java awt listener textfield

我有一个TextListener我想以编程方式更改而不触发它的TextListener. 我只希望文本侦听器在用户文本更改时激活。我应该如何进行?

TextField human = new TextField();
human.addTextListener(myListener);

// I don't want this line to trigger listener
human.setText(myString);
Run Code Online (Sandbox Code Playgroud)

Hov*_*els 5

您可以删除并重新添加侦听器,或者为其指定一个布尔值以切换何时应该侦听。

编辑:根据 Tom Hawtin:第二个建议,即使用标志的建议,比添加/删除侦听器更受欢迎,这对我来说也很有意义。