摆脱JMenu中浪费/未使用的空间

时间:2010-02-16 18:14:04

标签: java swing menu

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

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

Menu screen shot http://i45.tinypic.com/29qnwc9.png

2 个答案:

答案 0 :(得分:1)

这可能是您选择的UIManager外观(L& F)的默认值。您可以尝试使用put()进行更改。这个方便的UIManager Defaults工具可以显示各种L& Fs中不同Menu.margin值的效果。

答案 1 :(得分:1)

问题是菜单用户界面是故意排列所有菜单项的文本。如果您的菜单项都没有图标或复选框,那么它们中没有一个会在图标或复选框的左侧有任何空格。

就个人而言,我不想改变这一点。如果您确实找到了摆脱没有图标的菜单项旁边的“浪费空间”的方法,那么您的菜单将呈现锯齿状外观。如果你改变了这一点,那么阅读菜单的人就必须调整左手基线随着他们的眼睛向下移动菜单列表而变化的事实。

所以,我的建议是要删除所有图标,或者只是为了对所有菜单项的文本标签彼此垂直对齐感到高兴。