setStyleSheet PK qss

两者是等效的,可以互相覆盖,以最后一个的设置为准。

例子

  1. group_service--GroupGatewayWgt QTableWidget#tableWidget::item:selected{
  2. -skin_green-background-color: rgb(210, 240, 200);
  3. -skin_blue-background-color: rgb(170, 220, 255);
  4. }

group_service—GroupGatewayWgt:名称空间 group_service 下有个 GroupGatewayWgt 类。
类与类中某个部件的 objectName 有空格。
QTableWidget#tableWidget 表示 objectName 为 tableWidget 的 QTableWidget 类型部件。
::item 两个冒号表示这个部件的某个部分。
:selected 一个冒号表示这个部件的某个部分的某种状态。

是否继承父部件样式

titleBar->setStyleSheet(“border:** 1px solid **green”) // 子部件继承 titleBar 的样式**titleBar->setStyleSheet(“TitleBar{border: 1px solid green}”) // 子部件不继承 titleBar 的样式**

paintEvent

  1. void ImWgt::paintEvent(QPaintEvent *event)
  2. {
  3. QStyleOption opt;
  4. opt.init(this);
  5. QPainter p(this);
  6. style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
  7. QWidget::paintEvent(event);
  8. }