首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何改变QWizard或QWizardPage背景的颜色?

如何改变QWizard或QWizardPage背景的颜色?
EN

Stack Overflow用户
提问于 2014-04-10 17:05:23
回答 3查看 1.2K关注 0票数 0

在Qt中,可以指定QWizard页面的背景色?

setColorQPallete::Base中使用qApp,如果使用泛型窗口,背景将更改为正确的颜色。

但是,如果使用QWizardQWizardPage,则背景设置为白色。使用

代码语言:javascript
复制
qApp->setStyleSheet("QWidget { color: #000000; background-color: #2a82da; border: 1px solid white; } ");

颜色会改变,但是很多其他元素也会改变颜色(所有的小部件)。

如何将颜色更改指定为QWizardQWizardPage

提前感谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-04-11 10:19:36

嗯,这似乎是可行的:

代码语言:javascript
复制
QWizard wizard;
wizard.setStyleSheet("background-color:#E8E8E8");
票数 -1
EN

Stack Overflow用户

发布于 2018-08-15 06:40:52

我也遇到了同样的问题,这就是解决办法。

假设我有一个QWizard的子类

代码语言:javascript
复制
this->setObjectName("wizard");   
this->setStyleSheet("#wizard { background : #f4f7f9; ");

更改向导背景色而不影响其他元素。

票数 2
EN

Stack Overflow用户

发布于 2021-10-12 10:25:27

在Qt5中,当更改背景色时。

  • QWizard - QPalette::Window -放置在底部按钮附近
  • qDebug()<< QWizardPage->backgroundRole();给了我们QPalette::ColorRole(Window).,但这不是真的,真正的价值是QPalette::Base

代码:

QPalette bgpal

代码语言:javascript
复制
bgpal.setColor(QPalette::Base, Qt::white);
setPalette(bgpal);
this->setAutoFillBackground(true);

`this->setBackgroundRole(QPalette::YourPalette)`; don't recommend to use, on olds Qt it has a bug.

P.S. Ye,它具有与lineEdit背景相同的角色,如果设置为QLE边框0,您将得到:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22994519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档