1

根据这个例子要更详细一点,我刚刚遇到了一件奇怪的事情......

如果我使用方法 asaddTab(title,icon,component) 并且接下来想添加其他组件,setTabComponent(count-1,aComponent)那么aComponent会 替换 icon吗?我的意思是在这种情况下选项卡不包含图标:(

效果类似于(见图)。但是如何在这些选项卡上添加图标?

在此处输入图像描述

我不太确定,但我猜想aComponent会以某种方式替换icon ...所以我的问题是...如何在一个选项卡上同时拥有三个icontitleaComponent

4

2 回答 2

2

正如您在选项卡上设置的组件的 javadoc 中明确提到的那样,setTabComponentAt它将替换图标和标题

非空值意味着组件将呈现标题,而 JTabbedPane 将不呈现标题和/或图标。

因此,如果您想在选项卡上拥有标题、图标和组件,则必须创建自己的包含这 3 个项目的内容,并使用该方法Container设置该容器。setTabComponentAt

于 2012-07-14T06:49:29.463 回答
1

我认为您的意思是使用setComponentAt而不是setTabComponent.

你看,setTabComponent设置了一个负责渲染选项卡的组件(我猜这不是你想要的)。 setComponentAt在指定的选项卡中设置组件(我猜这就是您要查找的内容)。

总之,要添加具有标题和图标并在选项卡正文中包含组件的选项卡,请使用: addTab(title, icon, component)

要将组件更新(或添加)到现有选项卡,请使用: setComponentAt(index, component)

要将图标更新(或添加)到现有选项卡,请使用: setIconAt(index, icon)

要更新(或添加)现有选项卡的标题,请使用: setTitleAt(index, title)

于 2012-07-13T20:07:38.540 回答