-1
觸發事件我有附加這樣的Keylistener
一個JTextfield
:的KeyListener不JTextField中
field.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
log.debug("KEY PRESSED");
}
@Override
public void keyTyped(KeyEvent e) {
log.debug("KEY TYPED");
}
@Override
public void keyReleased(KeyEvent e) {
log.debug("KEY RELEASED");
}
});
但是當我鍵入某些鍵我可以看到keyReleased
並不總是射擊。我不能鍵入任何鍵直接事後,如果它不火,我必須再次點擊進入該文本字段或鍵入另一個鍵獲得釋放事件觸發(輸入的密鑰不是在文本字段中顯示)。我沒有使用Keys做任何事情,沒有事件被消耗。感覺就像事件被隨機發射一樣。同樣的情況與KeyListener
,而不是KeyAdapter
:
field.addKeyListener(new KeyListener() {
我使用Linux 64位,但這也發生在Win8中和Win10 64位。還嘗試了不同的鍵盤和不同的電腦。
我怎樣才能得到事件觸發正確?當我按例如箭頭鍵發生
有
不要使用'KeyListener'與文本組件,請使用'DocumentListener'而不是 – MadProgrammer
哪些鍵會導致問題?當您在文本字段中註冊「KeyListener」時,鍵入的鍵必須位於文本字段中。例如。 'TAB'可能會將焦點轉移到下一個組件上。 – hotzst
@hotzst它發生在任何包括數字的a-z鍵上。 –