private void jTextField1KeyPressed(java.awt.event.KeyEvent evt)
{
//cant capture my TAB?
System.out.print(evt.getKeyChar());
}
在不使用焦点监听技术的情况下,在 java gui 中捕获 tab 键的最简单方法是什么?
最佳答案
VK_TAB 是制表符常量。
但是:键事件监听器不会接收到 Tab 键按下或键释放事件。这是因为焦点子系统会消耗焦点遍历键,例如 Tab 和 Shift Tab。
见:http://docs.oracle.com/javase/tutorial/uiswing/events/keylistener.html
要解决这个问题,请将以下内容应用于触发键事件的组件(例如,TextArea):
.setFocusTraversalKeysEnabled(false)
使用此方法,您必须显式处理焦点遍历。或者,KeyEventDispatcher类可用于预听所有关键事件。
关于java - 如何收听在 Java 中按下/键入的 TAB 键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8275204/