Java: deleting field / padding on JTabbedPane

I would like to know how to remove fields between my JtabbedPane and my JFrame content area, as well as between my JTabbedPane and its internal JPanel. I circled the edges I want to remove. the green line is here to show the gap between the jpanel inside the jtabbedpane.

I tried to look at some method named setMargin, but it does not exist on JTabbedPane. I also checked Hgapand Vgap(both = 0) on different layouts (root content panel, my jpanel, etc.).

Therefore, any suggestions are welcome. Thank.

The image is here . I can not send images yet.

+5
source share
3

, - , . JTabbedPane .

(caveat: Works on MetalLookAndFeel, , Windows L & F, , GTK Nimbus, BasicLookAndFeel). :

UIManager.getDefaults().put("TabbedPane.contentBorderInsets", new Insets(0,0,0,0));
UIManager.getDefaults().put("TabbedPane.tabsOverlapBorder", true);

, , JTabbedPane EmptyBorder (0,0,0,0), , .

,

  • , , , () TabbedPaneUI
  • JTabbedPane, MetalTabbedPaneUI - , .
+7

, , - , , , :

    import javax.swing.plaf.basic.BasicTabbedPaneUI;

    tabbedPane.setUI(new BasicTabbedPaneUI() {
        private final Insets borderInsets = new Insets(0, 0, 0, 0);
        @Override
        protected void paintContentBorder(Graphics g, int tabPlacement, int selectedIndex) {
        }
        @Override
        protected Insets getContentBorderInsets(int tabPlacement) {
            return borderInsets;
        }
    });

, paintContentBorder, , , , , , .

Oracle Java 6 u43 Linux WindowMaker, Mac OS X 10.6.7 Mac Java 6 u37 Windows 7 Java 7 u07, , -: -)

+5

. JTabbedPane.

+1

All Articles