作为“ Hide label text for Qt tabs without setting text to empty string”的后续操作:

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



我尝试了QTabBar::findChildren,但没有成功。任何想法?

最佳答案

QTabBar标头节实际上不是小部件。它们由QStylePainter中的QTabBar::paintEvent绘制。因此,您无法访问它们。
作为解决方法,您可以添加带有空白文本的标签,并为其设置自定义窗口小部件:

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

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

关于c++ - QTabBar标签的内部QWidget?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24897261/

10-13 06:18