键盘按和Jbutton

时间:2013-03-25 01:32:12

标签: java swing jbutton keylistener

我有一个计算器应用程序,我在使用setMnemonic时遇到问题。我试图让键盘上的键与计算器上的按钮链接。它一直告诉我<标识符>是期待。这是我从函数http://docs.oracle.com/javase/tutorial/uiswing/components/button.html获取信息的页面。

我有什么想法可以让它发挥作用?  

1 个答案:

答案 0 :(得分:3)

您的问题与Swing或助记符无关,而与尝试在方法或构造函数之外进行方法调用有关。你不能这样做:

public class calculator_ui implements ActionListener {
  /**Creates a new instance of the window "Buttons"*/
    JFrame frame = new JFrame("Buttons");

    // .... etc...
    JButton buteq = new JButton("=");
    JButton butclear = new JButton("C");
    butclear.setMnemonic(KeyEvent.VK_B); // .... **** this is misplaced
    JButton back = new JButton("<");

而是将该行代码移动到类合法的构造函数中。

另外,设置助记符将设置按钮将重新分配的alt键组合。如果你想获得更高级的按钮并让按钮响应按下非alt数字键,那么你将需要使用键绑定。