我缺少选项卡和 Nimbus L&F TabbedPane 中设置为 SCROLL 的内容之间的蓝色水平分隔线(其他 L&F(默认和窗口)提供这些)。
如您所见,问题仅限于new JTabbedPane(JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT)
(图片顶部),而 WRAP 的默认设置不显示此行为(图片底部)。
应该可以通过覆盖NimbusDefaults.class
. 这是一段摘录:
//Initialize TabbedPane
d.put("TabbedPane.contentMargins", new InsetsUIResource(0, 0, 0, 0));
d.put("TabbedPane.tabAreaStatesMatchSelectedTab", Boolean.TRUE);
d.put("TabbedPane.nudgeSelectedLabel", Boolean.FALSE);
d.put("TabbedPane.tabRunOverlay", new Integer(2));
d.put("TabbedPane.tabOverlap", new Integer(-1));
d.put("TabbedPane.extendTabsToBase", Boolean.TRUE);
d.put("TabbedPane.useBasicArrows", Boolean.TRUE);
addColor(d, "TabbedPane.shadow", "nimbusDisabledText", 0.0f, 0.0f, 0.0f, 0);
addColor(d, "TabbedPane.darkShadow", "text", 0.0f, 0.0f, 0.0f, 0);
... more ...
我似乎无法弄清楚 Nimbus 在哪里以及如何区分 WRAP 和 SCROLL。有人能告诉我我需要什么魔法.put()
才能到达那里吗?
提前致谢!