Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我试图创建一个不同的actionPerformedwhenShift按下 JButton 时按住,但是当我使用时: event.isShiftDown; 我的程序无法编译,因为它无法识别它。
actionPerformed
event.isShiftDown;
Basically you need to bitwise-and the ActionEvent#getModifiers result
ActionEvent#getModifiers
if ((e.getModifiers() & InputEvent.SHIFT_MASK) != 0) { // Shift is down... }
作为直接检查事件修饰符的替代方法,请考虑Action对 shift 键的每个状态使用不同的修饰符。您可以将所需的掩码提供给KeyStroke在您的键绑定中使用,如此处所述。此处getMenuShortcutKeyMask()显示了一个相关的使用示例。
Action
KeyStroke
getMenuShortcutKeyMask()