請看看下面的代碼Java KeyListener:如何在按下兩個鍵時執行動作?
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
public class KeyCheck extends JFrame
{
private JButton check;
private JPanel panel;
private FlowLayout flow;
public KeyCheck()
{
check = new JButton("Check");
check.addKeyListener(new KeyWork());
panel = new JPanel();
panel.setLayout(new FlowLayout());
panel.add(check);
getContentPane().add(panel);
}
private class KeyWork extends KeyAdapter
{
public void keyPressed(KeyEvent k)
{
if(k.getKeyCode()==KeyEvent.VK_CONTROL && KeyEvent.VK_A)
{
JOptionPane.showMessageDialog(null, "OK");
}
}
}
public static void main(String[]args)
{
KeyCheck k = new KeyCheck();
k.setVisible(true);
k.setSize(200,200);
k.validate();
k.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
在這種情況下,我已經添加一個keylister到按鈕,我需要它來顯示消息「OK」時CTRL + A被壓在一起(控制鍵和「A」鍵)。但上面的代碼是錯誤的。所以,當兩個鍵被按在一起時,請幫助我得到消息。
無論如何,它爲什麼不與工作的JMenuItem ? –
@Sepala很難說沒有看到你的代碼。在這個問題上發佈另一個問題。您可能會通過發佈[SSCCE](http://sscce.org)獲得快速回復。 –