JMenuItem 的空格键快捷方式

Spacebar shortcut for JMenuItem

我正在开发菜单驱动的 java swing 应用程序。它有 4 到 5 个菜单,有 4 个或更多菜单项。我使用 JMenuBar#setKeyAccelerator(KeyStroke key) 为所有菜单项定义了快捷方式。但是当我将 spacebar 定义为快捷方式然后按 space 时,它会为我的第一个 JMenuItem 或之前选择的菜单项触发事件。这是我的代码片段:

JMenuItem item = new JMenuItem("Do Something");
item.setKeyAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, 0));

如何将空格键添加到菜单项以使其正常工作。

我发现了我的问题,我添加了一个带有按钮的工具栏并且我的按钮自动聚焦,这就是为什么当我按下 space 时,它按下我在 JToolBar

上的按钮