java-键盘按下和Jbutton

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

有什么想法可以使它工作吗?

最佳答案
您的问题与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数字键的按下,则需要使用“键绑定”.

转载注明原文:java-键盘按下和Jbutton - 代码日志