【问题标题】:JTabbedPane indentJTabbedPane 缩进
【发布时间】:2011-04-09 08:09:49
【问题描述】:

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

Swing 默认输出:

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

所需的缩进输出:

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

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

【问题讨论】:

  • 您的意思是您有两个选项卡式窗格,并且您希望第二个选项卡式窗格中的第一个选项卡“缩进”w.r.t。第一个选项卡式窗格的第一个选项卡?
  • 只有一个选项卡式窗格。我已经编辑了我的问题以添加说明。

标签: java swing user-interface netbeans jtabbedpane


【解决方案1】:

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

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

另请参阅:UIManager Defaults

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

【讨论】:

    【解决方案2】:

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

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

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

    【讨论】:

      猜你喜欢
      • 2014-08-08
      • 2013-02-25
      • 2011-10-11
      • 2014-08-24
      • 1970-01-01
      • 1970-01-01
      • 2012-04-20
      • 2012-05-27
      • 2023-03-16
      相关资源
      最近更新 更多