У меня есть JTextField, к которому я установил команду действия с методом setActionCommand (String s). Кажется, я могу получить эту команду только при использовании события actionPerformed.
Однако мне нужно получить некоторую подпись из моего JTexteField с событием keyTyped, потому что я использую несколько JTextFields, и мне нужно различать, в какой именно был введен ключ Enter. Вот мой фрагмент для события keyTyped:
public void keyTyped(KeyEvent k) {
String id = k.getComponent().getClass().getSimpleName();
if (KeyEvent.VK_ENTER == k.getKeyChar() && "JTextField".equals( id )) {
JTextField tempTxt = (JTextField) k.getComponent();
// Here I would like to get my JTextField signature, such as k.getActionCommand() with actionPerformed() method
}
}
Как я могу это сделать?
Однако мне нужно получить некоторую подпись из моего JTexteField с событием keyTyped, потому что я использую несколько JTextFields, и мне нужно различать, в какой именно был введен ключ Enter. Вот мой фрагмент для события keyTyped:
используйте ActionListener, добавленный в JTextField вместо KeyListener
для JTextComponents
использовать DocumentListener/DocumentFilter
то самым простым способом может быть
Вы можете просто использовать setName(String name)
на каждом JTextField
который у вас есть, и тогда вы сможете отличить их, вызвав k.getComponent().getName()