现在的JTabbedPane的选项卡的背景色setBackgroundAt(index, color)但是缺点是当选择tab的时候会出现默认的选择色,所以我写了ui,然后setUI(new PTabbedPanelUI()),tab的背景颜色不会再根据选择不选择而改变成选择色,但现在的问题是为什么选项卡的形状也变了,我只重载了BasicTabbedPaneUI#paintTabBackground方法,为什么啊不明白,谁能告诉我怎么改才能保持形状不边,但颜色达到我的效果

解决方案 »

  1.   

    jTabbedPane1.setBackground(Color.pink);
    就可以只改变选项卡的背景色
      

  2.   

    楼上的你说的是改变背景色,但当选择某个选项卡的时候,就会变回默认选择色,去看看BasicTabbedPaneUI吧,或者自己试试,我需要的颜色设置后不管选择不选择选项卡都不会改变,并且选项卡形状不变
      

  3.   

    class PTabbedPanelUI extends MetalTabbedPaneUI {
    protected void paintTabBackground(Graphics g, int tabPlacement, int tabIndex, int x, int y, int w, int h, boolean isSelected) {
    super.paintTabBackground(g, tabPlacement, tabIndex, x, y, w, h, false);
    }
    }