求助:qt工程中多个ui时如何使用qss

2025-04-06 12:49:16
推荐回答(1个)
回答1:

  简单来说,不要用this->setStyleSheet()
  父窗体和子窗体如果同时存在一个Widget的控件
  那么父窗体使用this->setStyleSheet(QSS),那么子窗体的Widget的样式自然也就会被父窗体Widget样式覆盖掉

  建议是每个控件都不要重名,加上窗体名前缀区分
  然后QSS里用#【控件名】进行约束,而不是QWidget{}这样来设置样式

  如果已经开发到了一定程度,修改控件名的代价太大,那就删掉全部的this->setStyleSheet(),然后每个控件单独setStyle(qss)来补救了,虽然烦,但是这是唯一办法