이 코드는 이이라고 입력하면 JTable
(gametable
)으로 루틴을 호출합니다. 잘 작동하지만, Action
을 누르지 않아도 JTable
에서 위 또는 아래로 이동할 때 같은 것을 원합니다. 을 입력하십시오.; 나는 그것을 작동시킬 수 없다. VK_ENTER
을 VK_UP
으로 대체하려고 시도했지만 테이블을 위아래로 이동할 수 없습니까?JTable에서 위 또는 아래로 눌렀을 때 루틴 호출하기
KeyStroke enter = KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ENTER, 0);
gameTable.getJTable().unregisterKeyboardAction(enter);
gameTable.getJTable().registerKeyboardAction(new ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
synchronized (this) {
gotoGame(gameTable.getSelectedIndex());
}
}
}, enter, JComponent.WHEN_FOCUSED);
나는 알 수 없다. 누군가 나를 도울 수 있습니까?
'KeyListener'는 본질적으로 _wrong_가 아니지만 키 바인딩과 관련된 질문입니다. – trashgod
어쩌면 나는 그 질문을 오해했을 것입니다. 기능적으로는 내 프로그램에서하는 것처럼 들립니다. 내가 단축키 및 복사/붙여 넣기에 대한 몇 가지 키 바인딩을 가지고 있지만 기능의 다른 유형이야. – Logan
'KeyListener'는 "missing"키로 악명이 높습니다. 'KeyEvent'가 이벤트 핸들링 체인에서 더 많이 소비된다면,'KeyEvent'는 아마 당신에게 그것을 만들지 않을 것입니다. KeyBinding은 훨씬 더 신뢰할 수 있습니다. IMHO – MadProgrammer