Java 更改选项卡和JTable之间的行的颜色
我正在自定义我的Java 更改选项卡和JTable之间的行的颜色,java,swing,jtable,jtabbedpane,border-color,Java,Swing,Jtable,Jtabbedpane,Border Color,我正在自定义我的JTabbedPane的视觉外观,它包含三个JTables 当我成功地为选项卡的选择颜色着色(包括更改文本颜色)时,我通过创建自己的BasicTabbedPaneUI更改了选项卡边框的颜色。但是仍然有一条线,它仍然保持原来的样子。此行位于选项卡和表之间。见下图: 我说的这条线有三个小红点。 这条线是什么?如果是边界,它属于哪里?我没有找到一种方法来设置它的颜色。我检查了JTable,他检查了JTabbedPane,甚至检查了JTabbedPane的组件 为了展示我能接触到的东西
JTabbedPane
的视觉外观,它包含三个JTables
当我成功地为选项卡的选择颜色着色(包括更改文本颜色)时,我通过创建自己的BasicTabbedPaneUI
更改了选项卡边框的颜色。但是仍然有一条线,它仍然保持原来的样子。此行位于选项卡和表之间。见下图:
我说的这条线有三个小红点。
这条线是什么?如果是边界,它属于哪里?我没有找到一种方法来设置它的颜色。我检查了JTable
,他检查了JTabbedPane
,甚至检查了JTabbedPane
的组件
为了展示我能接触到的东西,我把每个部件都漆成了绿色。
你可以看到,这条蓝线仍然存在。
有人知道如何改变它的颜色吗?
删除它将是另一个可接受的选项。可能
选项卡窗格。contentAreaColor
(选项卡窗格的顶部。contentBorderInsets):
好极了它与设置
UIManager.put(“TabbedPane.contentAreaColor”,Color.GREEN)一起工作代码>
import java.awt.*;
import javax.swing.*;
import javax.swing.plaf.basic.*;
public final class BasicTabbedPaneColorTest {
private JComponent makeUI() {
//UIManager.put("TabbedPane.contentBorderInsets", new Insets(10, 10, 10, 10));
//UIManager.put("TabbedPane.contentBorderInsets", new Insets(0, 10, 10, 10));
UIManager.put("TabbedPane.contentAreaColor", Color.GREEN);
UIManager.put("TabbedPane.highlight", Color.RED);
JTabbedPane tabs = new JTabbedPane();
tabs.setUI(new BasicTabbedPaneUI());
//tabs.setBackground(Color.ORANGE);
//tabs.setOpaque(true);
tabs.addTab("JTable", new JScrollPane(new JTable(20, 3)));
tabs.addTab("JTree", new JScrollPane(new JTree()));
return tabs;
}
public static void main(String... args) {
EventQueue.invokeLater(() -> {
JFrame f = new JFrame();
f.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
f.getContentPane().add(new BasicTabbedPaneColorTest().makeUI());
f.setSize(320, 240);
f.setLocationRelativeTo(null);
f.setVisible(true);
});
}
}