java消除JMenu中浪费/未使用的空间
在我的应用程序中,我有一个带有文件菜单的菜单栏。在子菜单中,每个JMenuItem都会在文本左侧浪费大量空白来显示复选框(我认为),即使我没有包含任何JCheckBoxMenuItems
我看到很多其他java/swing应用程序的菜单不会浪费这个空间。如何在我的应用程序中执行此操作
你可以在下面搜索框中键入要查询的问题!
在我的应用程序中,我有一个带有文件菜单的菜单栏。在子菜单中,每个JMenuItem都会在文本左侧浪费大量空白来显示复选框(我认为),即使我没有包含任何JCheckBoxMenuItems
我看到很多其他java/swing应用程序的菜单不会浪费这个空间。如何在我的应用程序中执行此操作
# 1 楼答案
这可能是您选择的^{} 外观(L&;F)的默认设置。您可以尝试使用^{} 来更改它。这个方便的UIManager Defaults工具显示了不同的
Menu.margin
值在各种L&;财政司司长# 2 楼答案
问题是菜单UI故意将所有菜单项的文本对齐。如果菜单项中没有图标或复选框,那么它们的左侧也不会有图标或复选框的空间
就我个人而言,我不想改变这一点。如果你想办法摆脱菜单项旁边没有图标的“浪费空间”,那么你的菜单就会有锯齿状的外观。如果你改变了这一点,那么阅读菜单的人将不得不适应这样一个事实,即当他们的眼睛沿着菜单列表向下移动时,左手基线会不断变化
因此,我的建议是要么去掉所有图标,要么只是高兴所有菜单项的文本标签彼此垂直对齐