JMenuItem中的JButton

时间:2011-10-19 14:18:09

标签: java swing jbutton jmenu jmenuitem

我正在尝试构建一个特定的JMenu。 我希望JMenuItem具有JMenu功能,I.E。当我们点击它时,该项应该做一些事情(比如打开一个对话框)。但是JMenuItem还应该包含一个按钮(或其他组件),当我们点击它时,应该打开一个带有几个选项的弹出窗口。

所以,到现在为止我有这样的事情:

Desired UI

这就是我点击箭头之前所拥有的。

我的问题是,当我按下按钮(箭头)时,子菜单实际上是打开的,但是包含该按钮的菜单项因为失去焦点而关闭。

Broken UI

这是点击箭头按钮后的结果。

有没有办法管理这个?或者更好的方法来实现这种行为?

4 个答案:

答案 0 :(得分:2)

如果我们确切知道您要实施的内容,我们可以为您提供指导。如果你只想选择一个选项,你可以用JRadioButtonMenuItem更好地实现它,所以你真的不需要实现一个按钮然后选择一个选项。但这取决于你真正想要的。

答案 1 :(得分:2)

这不是菜单的用途。使用ribbon代替,这些事情将变得简单而自然。

答案 2 :(得分:1)

为什么不使用简单的嵌套JMenuItem呢? 类似于this(从顶部开始的第一个屏幕)。

另一方面,您可以从描述here的类似解决方案中受益。

答案 3 :(得分:0)

无法真正找到针对此特定问题的解决方案。 作为一种解决方法,我只使用了一个简单的按钮,在选项1和选项2之间切换,而不是使用打开新弹出窗口的按钮(箭头)。 非常感谢你的帮助。