如何访问QTabWidget的QTabBar
我找到的唯一解决方案是将QTabWidget子类化,并将受保护的QTabWidget::getTabBar()重写为公共。有没有其他方法可以做到这一点?
发布于 2009-10-02 10:18:36
tabBar->findChild<QTabBar *>(QLatin1String("qt_tabwidget_tabbar"));发布于 2009-10-02 15:53:16
正如您所提到的,子类化是合适的解决方案,因为它是受保护的。如下所示:
class TabWidget : public QTabWidget {
public:
TabWidget(QWidget *p = 0) : QTabWidget(p){}
public:
QTabBar *tabBar() const { return QTabWidget::tabBar(); }
};你可以告诉designer将你的QTabWiget“提升”成一个TabWidget,然后你就有了一个可访问的tabBar()函数。
发布于 2009-10-02 13:30:04
您想对选项卡栏做什么?
可能没有帮助,但使用stylesheets,您可以自定义选项卡子控件::QTabWidget和::tab-bar。
https://stackoverflow.com/questions/1508658
复制相似问题