有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java消除JMenu中浪费/未使用的空间

在我的应用程序中,我有一个带有文件菜单的菜单栏。在子菜单中,每个JMenuItem都会在文本左侧浪费大量空白来显示复选框(我认为),即使我没有包含任何JCheckBoxMenuItems

我看到很多其他java/swing应用程序的菜单不会浪费这个空间。如何在我的应用程序中执行此操作

Menu screen shot


共 (2) 个答案

  1. # 1 楼答案

    这可能是您选择的^{}外观(L&;F)的默认设置。您可以尝试使用^{}来更改它。这个方便的UIManager Defaults工具显示了不同的Menu.margin值在各种L&;财政司司长

  2. # 2 楼答案

    问题是菜单UI故意将所有菜单项的文本对齐。如果菜单项中没有图标或复选框,那么它们的左侧也不会有图标或复选框的空间

    就我个人而言,我不想改变这一点。如果你想办法摆脱菜单项旁边没有图标的“浪费空间”,那么你的菜单就会有锯齿状的外观。如果你改变了这一点,那么阅读菜单的人将不得不适应这样一个事实,即当他们的眼睛沿着菜单列表向下移动时,左手基线会不断变化

    因此,我的建议是要么去掉所有图标,要么只是高兴所有菜单项的文本标签彼此垂直对齐