java - 选择某些元素后使 Swing JMenuBar 树保持打开状态

标签 java swing user-interface drop-down-menu

我目前正在自学 Java,通过 Sun 出版的 Horstmann 和 Cornell 的非常全面且易读的文本(第 8 版/第 1 卷。ISBN:978-0-12-235476-9)以及通过完成一个 Swing 示例( list 9-8)时,我注意到在选择“Toggle”菜单项时执行了一个恼人的操作。

该示例显示使用 JCheckBoxMenuItemJRadioButtonMenuItem 类在某些选项之间进行切换。我注意到,选择这些菜单组件之一后,遍历的整个树都会关闭。有没有办法通过项目的可设置属性或在提供的 ActionListener 中调用的方法来阻止此菜单关闭?

作者代码转储的链接:Here

为任何回应干杯。进一步深入 UI 实现将是一个很好的调整。

最佳答案

  • not possible from Java6 ,对于用于 JMenuJComboBoxJPopup,弹出窗口对鼠标和键盘事件隐藏

  • 可以基于(未修饰的)JDialogJWindowJMenu/JComboBox 自定义弹出窗口code>,使用 JButtons(在您的情况下使用 JCheckBox/JRadioButtons)由 GridLayout

  • 放置

关于java - 选择某些元素后使 Swing JMenuBar 树保持打开状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14293693/

相关文章:

java - 打印 JTable 中选定的行

java - JLayeredPane 中的顶层未显示

java - 为什么 JComboBox 上的 getSelectedItem() 不是通用的?

c++ - 我想在程序启动时使用 Qt 打开并读取文本文件

java - 通过登录打开另一个窗口

java - 是否可以在程序中捕获 SQL 约束违规异常?

java - 双重 dispatch 和继承

java - 我有一个二维字符数组,由于某种原因,它不允许我将数组内的字符与另一个字符进行比较?

user-interface - D 的 GUI 库

javascript - noUiSlider 没有出现