根据这个example更加详细this one我只是面对一件奇怪的事情......
如果我将方法用作addTab(title,icon,component)
,接下来想要添加setTabComponent(count-1,aComponent)
的其他组件,则 aComponent 替换 图标?我的意思是在这种情况下标签不包含图标:(
效果类似(见图)。但是如何在这样的标签上添加图标?
我不太确定,但我想某种方式 aComponent 取代图标 ......所以我的问题是...... 如何在一个标签上同时拥有三个图标,标题和 aComponent ?
答案 0 :(得分:2)
正如setTabComponentAt
的javadoc中明确提到的那样,您在选项卡中设置的组件将替换图标和标题
非空值表示组件将呈现标题,JTabbedPane将不呈现标题和/或图标。
因此,如果您想在标签上添加标题,图标和组件,则必须创建自己的Container
包含这3个项目,并使用setTabComponentAt
方法设置该容器。< / p>
答案 1 :(得分:1)
我认为您打算使用setComponentAt
代替setTabComponent
。
你看,setTabComponent
设置了一个负责渲染标签的组件(我猜这不是你想要的)。 setComponentAt
在指定的标签中设置组件(我猜这是你要找的东西)。
总之,要添加具有标题和图标的选项卡,并在选项卡正文中包含组件,请使用:
addTab(title, icon, component)
要将组件更新(或添加)到现有选项卡,请使用:
setComponentAt(index, component)
要将图标更新(或添加)到现有标签,请使用:
setIconAt(index, icon)
要将标题更新(或添加)到现有标签,请使用:
setTitleAt(index, title)