JTabbedPane缩进

时间:2010-09-07 17:46:56

标签: java swing user-interface netbeans jtabbedpane

使用JTabbedPane时,如何缩进标签?

Swing默认输出:

-------  ---------  ------
|  A  |  |   B   |  |  C |
------------------------------
|                            |
|                            | 
|                            |
|                            |
|                            |

所需的缩进输出:

   -------  ---------  ------
   |  A  |  |   B   |  |  C |
------------------------------
|                            |
|                            | 
|                            |
|                            |
|                            |

这看起来很简单,但我找不到解决方案。 感谢。

2 个答案:

答案 0 :(得分:1)

对于所有选项卡式窗格,您可以使用以下默认LAF:

UIManager.put("TabbedPane.tabAreaInsets", new Insets(2, 20, 0, 6) );

另请参阅:UIManager Defaults

对于单个选项卡式窗格,您可能需要覆盖BasicTabbedPaneUI类的“getTabAreaInsets()”方法以返回上面的Inset。

答案 1 :(得分:0)

如果使用简单的JTabbedPane无法做到这一点,您可以使用以下(稍微不优雅)的解决方案:

创建自己的组件,包括JTabbedPane和JPanel。 JTabbedPane仅显示 选项卡;就其而言,每个标签都是空的。 JPanel(使用CardLayout)负责实际显示每个选项卡。将ChangeListener添加到JTabbedPane,并使用它在CardLayout的卡之间切换。

然后你需要做的就是在你自己的组件中布置JTabbedPane和JPanel,你可以随意做。这样你就可以将标签推到右边。