Pro*_*sam 5 java swing keylistener jframe jbutton
大家好
我有一个JFrame,我已经为这个JFrame添加了一个JButton.
我还在我的JButton中添加了一个ActionListener.
现在请将此伪代码转换为Java:
public void actionPreformed(ActionEvent e){
if (isShiftDown)
print "Shift is Down.";
else
print "Shift is Up.";
}
Run Code Online (Sandbox Code Playgroud)
实际上我想知道isShiftDown,而我的JButton是否按下了.
谢谢.
替换isShiftDown为
(e.getModifiers() & InputEvent.SHIFT_MASK) != 0
(e.getModifiers() & ActionEvent.SHIFT_MASK) != 0
getModifiers()返回在事件(alt,ctrl,shift ...)期间按下的所有修饰符的位掩码,您可以按位 - 并获取其中一个的状态.几乎就是它在文档中所说的内容.
编辑:从Java 9开始,建议使用InputEvent.SHIFT_DOWN_MASK
Edit2:在这种情况下(ActionEvent#getModifiers()(Java SE 9和JDK 9)),应该使用ActionEvent.SHIFT_MASK而不是InputEvent.SHIFT_MASK
| 归档时间: |
|
| 查看次数: |
1460 次 |
| 最近记录: |