JMenuCheckBox:如何设置只有 1 个键的加速器

Posted

技术标签:

【中文标题】JMenuCheckBox:如何设置只有 1 个键的加速器【英文标题】:JMenuCheckBox: How to set an accelerator with only 1 key 【发布时间】:2014-04-20 07:11:25 【问题描述】:

我有一个 JMenuCheckBox 可以在我的程序中打开和关闭声音。我设置了一个加速器:

toggleSoundMenuCheckBox.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, ActionEvent.ALT_MASK));

这可以通过按 ALT + S 来切换复选框。

有没有办法只使用一个键来使用加速器(我希望它只使用“S”键而不按 ALT 或任何其他键来打开/关闭)。

【问题讨论】:

【参考方案1】:

您可以为此使用重载的 getKeyStroke(char)。示例:

KeyStroke.getKeyStroke('s')

这将为您提供只有键而没有修饰键的击键。

注意:像这样绑定单个键时,您可能无法在文本框中键入它。

【讨论】:

以上是关于JMenuCheckBox:如何设置只有 1 个键的加速器的主要内容,如果未能解决你的问题,请参考以下文章