【问题标题】:How can I set background color/image specific tab at QTabWidget?如何在 QTabWidget 设置背景颜色/图像特定选项卡?
【发布时间】:2012-12-12 20:21:29
【问题描述】:

经过漫长的访客状态,终于,这是我的第一篇文章。 我在我的 TabWidget(来自配置)中动态创建选项卡。喜欢; - 是python代码,pyqt,答案可以用c++编码,对我来说无所谓:)——

baseWidget = QWidget()
//fill baseWidget with other widgets
window.tabWidget.addTab(baseWidget, _fromUtf8(""))
window.tabWidget.setTabText(window.tabWidget.indexOf(baseWidget), ...)

然后,通过 qss 设置样式,比如;

QTabBar::tab {}
QTabBar::tab:selected {}
QTabBar::tab:!selected {}
QTabBar::tab:last {}
QTabBar::tab:first:!selected {}
QTabBar::tab:!selected:hover {}

此时一切正常。但是,我想单独为我的标签着色。

我怎样才能做到这一点? 如果可以的话,如何设置标签的objectName?

所有帖子将不胜感激:)

【问题讨论】:

    标签: python qt pyqt qtabbar qtstylesheets


    【解决方案1】:

    更改基础对象名称不会有帮助,您对基础对象的样式表要做的就是更改该面板的内容背景。

    我针对您的问题进行了大量研究并测试了一些东西,似乎唯一的解决方案是重新实现 QTabWidget 绘画事件。

    我尝试了一些我在其他任何地方都没有读过的东西,它给出了一些奇怪的结果,这种方法应该有效。如果你想研究它并亲自看看:

    tabWidget->setCurrentIndex(0);
    tabWidget->tabBar()->setStyleSheet("background-color: red;");
    
    tabWidget->setCurrentIndex(1);
    tabWidget->tabBar()->setStyleSheet("background-color: blue;");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-12
      • 2019-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-24
      • 1970-01-01
      相关资源
      最近更新 更多