【发布时间】:2008-12-18 23:19:36
【问题描述】:
首先,为了让我的工作更容易解释,这是我的一些代码:
JSpinner spin = new JSpinner();
JFormattedTextField text = getTextField(spin);
text.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
// Do stuff...
}
});
...
private JFormattedTextField getTextField(JSpinner spinner) {
JComponent editor = spinner.getEditor();
if (editor instanceof JSpinner.DefaultEditor) {
return ((JSpinner.DefaultEditor )editor).getTextField();
} else {
System.err.println( "Unexpected editor type: "
+ spinner.getEditor().getClass()
+ " isn't a descendant of DefaultEditor" );
return null;
}
}
如您所见,我已经做到了。事实上,当我在微调器的文本字段组件中输入一个值 (JFormattedTextField),然后按 ENTER,它就可以工作了。
我现在想要的是能够让文本字段响应 ENTER 而无需手动输入新值(这有点违背了制作微调器的目的)。我该怎么做?
【问题讨论】:
标签: java swing jtextfield listeners jspinner