如何设置JTabbedPane
选项卡的背景和前景、高度和宽度(包括选中和未选中的选项卡)
发布于 2011-08-09 18:13:36
您可以为UIDefaults设置新值:
UIDefaults def = UIManager.getLookAndFeelDefaults();
def.put( "TabbedPane.foreground", Color.RED );
def.put( "TabbedPane.textIconGap", new Integer(16) );
def.put( "TabbedPane.background", Color.BLUE );
def.put( "TabbedPane.tabInsets", new Insets(10,10,10,10) );
def.put( "TabbedPane.selectedTabPadInsets", new Insets(10,20,10,20) );
以下是关键字列表
TabbedPane.textIconGap
TabbedPane.contentOpaque
TabbedPane.focus
TabbedPane.foreground
TabbedPane.tabRunOverlay
TabbedPane.shadow
TabbedPane.darkShadow
TabbedPane.background
TabbedPane.ancestorInputMap
TabbedPane.focusInputMap
TabbedPane.tabInsets
TabbedPane.light
TabbedPane.contentBorderInsets
TabbedPane.tabsOverlapBorder
TabbedPane.tabsOpaque
TabbedPane.tabAreaInsets
TabbedPane.highlight
TabbedPane.font
TabbedPane.selectedTabPadInsets
对于Nimbus LookAndFeel,还有一些其他的Nimbus Defaults,比如:
TabbedPane:TabbedPaneTabArea.contentMargins
TabbedPane:TabbedPaneTabArea[Enabled].backgroundPainter
TabbedPane:TabbedPaneTab[Selected].backgroundPainter
TabbedPane:TabbedPaneTabArea[Enabled].backgroundPainter
TabbedPane:TabbedPaneTab.contentMargins
TabbedPane.tabOverlap
发布于 2011-10-19 19:44:54
改变标签的高度和宽度的一种方法是在标签中使用HTML和/或CSS。您可以在HTML 'span‘或'p’元素中使用CSS填充属性来实现此目的。
发布于 2016-08-05 00:34:45
您可以按如下方式控制高度:
JTabbedPane tabs = new JTabbedPane();
tabs.setUI(new BasicTabbedPaneUI() {
@Override
protected int calculateTabHeight(int tabPlacement, int tabIndex, int fontHeight) {
return 45; // manipulate this number however you please.
}
});
如果每个选项卡需要不同的高度,这个答案可能也很有用:How to handle the height of the tab title in JTabbedPane
https://stackoverflow.com/questions/6994352
复制相似问题