#java #swing
#java #swing
Вопрос:
У меня есть класс, расширяющий JDialog. В это я помещаю JTextField и JButton (jButton1). Внутри jButton1ActionPerformed есть некоторый код.
Я хочу выполнить тот же код, когда я ввожу некоторые значения в JTextField и нажимаю кнопку enter.
Ответ №1:
Пусть ваш класс реализует ActionListener и поместит ваш код внутрь actionPerformed
метода. Затем вы можете установить экземпляр в качестве ActionListener как для кнопки, так и для текстового поля.
public MyDialog extends JDialog implements ActionListener
{
JTextField myTextField;
JButton myButton;
public MyDialog()
{
//set up and add components here
myButton.addActionListener(this);
myTextField.addActionListner(this);
}
public void actionPerformed(ActionEvent evt)
{
//code here that does stuff when button pressed, or enter pressed on text field
}
}
Комментарии:
1. 1, или вы также можете создать действие, которое может быть добавлено к обоим прослушивателям. Преимущество использования действия заключается в том, что вы потенциально можете отключить / включить действие, а действия могут использоваться с привязками клавиш, если это когда-либо потребуется.
Ответ №2:
jButton1.doClick();
вы можете вызвать это