C++ qtabar&x27的内部QWidgets;谁的账单?

C++ qtabar&x27的内部QWidgets;谁的账单?,c++,qt,qtabbar,C++,Qt,Qtabbar,作为“”的后续内容: 我可以直接访问QTabBar选项卡中的小部件吗。我不是说选择选项卡时显示的相应小部件,而是选项卡的小部件(在日志标签和日志图标下方的屏幕截图中) 我尝试了qtabar::findChildren,但没有成功。有什么想法吗?qtabar标题部分实际上不是小部件。它们由QStylePainter内部QTabBar::paintEvent绘制。因此,您无法访问它们。 作为一种解决方法,您可以添加一个带有空文本的选项卡,并为其设置一个自定义小部件: QTabBar *bar =

作为“”的后续内容:

我可以直接访问
QTabBar
选项卡中的小部件吗。我不是说选择选项卡时显示的相应小部件,而是选项卡的小部件(在日志标签和日志图标下方的屏幕截图中)


我尝试了
qtabar::findChildren
,但没有成功。有什么想法吗?

qtabar
标题部分实际上不是小部件。它们由
QStylePainter
内部
QTabBar::paintEvent
绘制。因此,您无法访问它们。 作为一种解决方法,您可以添加一个带有空文本的选项卡,并为其设置一个自定义小部件:

QTabBar *bar = new QTabBar;
bar->addTab("");

QLabel *label = new QLabel("my label");
bar->setTabButton(0, QTabBar::LeftSide, label);

您是否尝试了
QTabBar::tabButton()
QTabBar::tabIcon()
函数?
tabIcon
给了我一个
const QIcon
,我无法修改它-好的,我可以设置一个全新的图标
tabButton
始终返回
nullptr
:尝试
QWidget*w=this->m_tabBar->tabButton(0,QTabBar::RightSide)左右两侧。工作正常,需要注意一点。然而,即使是选项卡的空文本也会占用一些空间。我想你应该能够通过使用样式表来调整它,尝试使用最小宽度和填充属性。