Cla*_*Boy 3 java swing border jtabbedpane
我在我的应用程序中使用JTabbedPane.我添加了两个选项卡,它们是自定义类"ContentPanel"的实例.这扩展了JPanel并设置了背景,边框等等.基本上它意味着我不必设置我想要应用此颜色方案的每个JPanel的属性.我注意到它们的边框不仅会出现,而且还有另一个边框(我认为是蓝色 - 至少在我的屏幕上),这个边框出现在边框周围,连接到标签"选择器"本身(即你点击的按钮以获得适当的观点).我想改变这个边界,因为它看起来很奇怪对金/棕色配色方案.有谁知道怎么做?我尝试过JTabbedPane.setBorder(边框b),但这不起作用.这只是围绕整个事物设置边框,包括选项卡选择器..不是我想要的.
任何有关这方面的帮助将不胜感激.
akf*_*akf 12
这些颜色在外观中定义.如果查看代码BasicTabbedPaneUI,您会注意到installDefaults()设置了一堆protected Color实例变量.它们在L&F中定义的键也可在此处获得.
protected void installDefaults() {
LookAndFeel.installColorsAndFont(tabPane, "TabbedPane.background",
"TabbedPane.foreground", "TabbedPane.font");
highlight = UIManager.getColor("TabbedPane.light");
lightHighlight = UIManager.getColor("TabbedPane.highlight");
shadow = UIManager.getColor("TabbedPane.shadow");
darkShadow = UIManager.getColor("TabbedPane.darkShadow");
//...
// a lot more stuff
//...
}
Run Code Online (Sandbox Code Playgroud)
如果您不想定义自己的L&F,则可以在选项卡式窗格上设置自定义UI委托:
myTabbedPane.setUI(new BasicTabbedPaneUI() {
@Override
protected void installDefaults() {
super.installDefaults();
highlight = Color.pink;
lightHighlight = Color.green;
shadow = Color.red;
darkShadow = Color.cyan;
focus = Color.yellow;
}
});
Run Code Online (Sandbox Code Playgroud)
您当然可以想要更改这些颜色设置.如图所示,您将看到在哪里使用哪些变量.