2

使用 JTabbedPane 时,如何缩进制表符?

Swing 默认输出:

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

所需的缩进输出:

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

这似乎很简单,但我一直无法找到解决方案。谢谢。

4

2 回答 2

1

对于所有选项卡式窗格,您可以将以下内容与默认 LAF 一起使用:

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

另请参阅:UIManager 默认值

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

于 2010-09-07T20:18:28.487 回答
0

如果无法使用简单的 JTabbedPane 来实现,您可以使用以下(有点不优雅)的解决方案:

创建您自己的组件,由 JTabbedPane 和 JPanel 组成。JTabbedPane显示选项卡;就它而言,每个选项卡都是空的。JPanel(使用 CardLayout)负责实际显示每个选项卡。在 JTabbedPane 中添加一个 ChangeListener,并使用它在 CardLayout 的卡片之间进行切换。

然后您所要做的就是在您自己的组件中布置 JTabbedPane 和 JPanel,您可以随心所欲地进行操作。这使您可以将标签推到右侧。

于 2010-09-07T17:58:35.877 回答