如何在Java中设置按钮中的单键助记符? [英] How to set a Single key Mnemonic in button in Java?
本文介绍了如何在Java中设置按钮中的单键助记符?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在一个项目上,我想在按钮上设置助记符.但是问题是助记符可用于配对键示例( Alt + F )等.但是我希望它位于单个键上.
I am working on a project and I want to set Mnemonic on buttons. But the problem is Mnemonic works on pairing key example (Alt+F) etc. But I want it to be on single key.
推荐答案
-
已经研究了KeyBindings,
have look at KeyBindings,
然后您可以将任何键附加到JButton
then you can to attach any Key to the JButton
这是您获得帮助的示例代码,只需按键盘上的 C :
Here is one example code for your help, just Press C on the Keyboard :
import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.Action; public class ButtonExample { private JFrame frame; private JButton button; private void displayGUI() { frame = new JFrame("Button Mnemonic Example"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel contentPane = new JPanel(); Action buttonAction = new ButtonAction("CLICK ME" , "This is a Click Me JButton"); button = new JButton(buttonAction); button.getInputMap().put(KeyStroke.getKeyStroke('c'), "Click Me Button"); button.getActionMap().put("Click Me Button", buttonAction); contentPane.add(button); frame.setContentPane(contentPane); frame.pack(); frame.setLocationByPlatform(true); frame.setVisible(true); } class ButtonAction extends AbstractAction { public ButtonAction(String text, String desc) { super(text); putValue(SHORT_DESCRIPTION, desc); } @Override public void actionPerformed(ActionEvent ae) { JOptionPane.showMessageDialog(frame, "BINGO, you SAW me."); } } public static void main(String... args) { SwingUtilities.invokeLater(new Runnable() { public void run() { new ButtonExample().displayGUI(); } }); } }
这篇关于如何在Java中设置按钮中的单键助记符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文