好的,基于此链接JTextField in JDialog retaining value after dispose我现在知道为什么我的TextField会保留其值,但是查看我的代码我不知道如何处理它。
我的文本字段位于我的主窗格内,该窗格位于JSplitPane中。作为左侧组件,我有一个JTree和正确的组件,我有主窗格。 SplitPane进入Dialog内部,所以有人知道如何处理这个问题?如何处置它并再次打开后,如何获取TextField的值?我不能简单地将文本字段添加到对话框中,直到现在我能看到的唯一方法是以某种方式为文本字段创建一个向量
答案 0 :(得分:0)
要解决此问题,请将textfield声明为static:
//JTextField Declaration and Initialization
static JTextField NODES_TEXT_FIELD = new JTextField();
之后捕获TextField的值:
int nodes = Integer.valueOf(NODES_TEXT_FIELD.getText());
在我的情况下是一个int值,切换自己;之后清除文本字段的值,因为组件是静态的,所以它将被存储,如果你在处理完对话框后不再这样做,你会看到最后使用的值。
NODES_TEXT_FIELD.setText("");
特别感谢@kleopatra