【问题标题】:Height of JMenuBar, JMenu and JMenuItemJMenuBar、JMenu 和 JMenuItem 的高度
【发布时间】:2013-05-08 21:28:49
【问题描述】:

是否可以使用 UIManager 为所有菜单设置一次 JMenuBar、JMenu 和 JMenuItem 的高度?

我目前正在使用:

setPreferredSize(new Dimension(100, 25));

但我觉得这不是最好的方法。

【问题讨论】:

  • 为什么要让菜单看起来更大?你想让字体也更大吗?或者你只是想要一些插图?在后一种情况下,不如在各种元素上设置一个空边框以达到预期的效果。
  • 关于唯一的全局解决方案是替换这些组件的 UI 委托。这是很多额外的工作......

标签: java swing jmenu jmenuitem jmenubar


【解决方案1】:

最好的方法是让系统处理宽度和高度(调用 super 应该给你正确的宽度和高度,它将显示全文内容)

虽然如果你想明确地将宽度设置为 100,高度设置为 25,setPreferredSize() 是一种方法。另一种方法是使用 Box Layout

menuBar.add(Box.createRigidArea(new Dimension(100,25)));

【讨论】:

    【解决方案2】:

    Mady 的回答会将您所有的 JMenus(如果这是您在 JMenuBar 上添加的内容)挤压到最左角,并在菜单栏上显示您的空框。

    这很好用:

    menubar.setPreferredSize(new Dimension(width,height));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多