2015-04-01 123 views
17

我有一个在qss文件中设置样式的应用程序。所有小部件背景现在都是较暗的颜色,按钮也有自己的风格。如何设计QWizard的按钮区域?

这是所有的工作在整个软件除了在QWizard似乎有自己的按钮面积整个向导的底部与默认qt小部件的颜色仍然适用于它。

我已经看过了我可以在QWizard上应用样式的各种组件,但是它们中的任何一个似乎都不是该窗体底部的按钮区域,只是想知道是否有人曾经遇到过这个,并且发现了哪个对象我需要应用这种风格来改变这个区域的颜色。

enter image description here

+0

你尝试什么风格:

wizard->setWizardStyle(QWizard::ClassicStyle); 

对于默认VistaStyle画中的QWizard这样的硬编码源? 'QWizard {background:red}'适合我。 – svlasov 2015-04-01 17:41:47

+0

这似乎是一个显而易见的事情尝试...因为ID已经设置了QWidget的风格,我期待着一个不受干扰的位是一个按钮区域或导航栏或我需要的样式,我现在会尝试并让你知道如果它工作后作为答案,并接受它 – AngryDuck 2015-04-02 07:51:01

+0

我正在使用.qss样式表的整个程序在main中应用,没有设置内联样式。我曾尝试设置背景颜色和QWizard页面背景颜色,但都没有区别 – AngryDuck 2015-04-02 08:23:41

回答

3

如果向导样式设置为ClassicStyle然后QWidgets可用于与QSS着色。

if (wizardPrivate->isVistaThemeEnabled(QVistaHelper::VistaBasic)) { 
    if (window()->isActiveWindow()) 
     painter.setPen(QPen(QBrush(QColor(169, 191, 214)), 0)); // ### hardcoded for now 
    else 
     painter.setPen(QPen(QBrush(QColor(182, 193, 204)), 0)); // ### hardcoded for now 
    painter.drawLine(0, 0, width(), 0); 
} 

Code on Github

+0

只是今天才开始测试这个,它完美地工作谢谢你,赏金颁发 – AngryDuck 2015-05-15 08:59:54