CSSQCheckBox::checked { color: red; } QLabel[checked="true"] { color: red; }
C++ (Qt)...private slots: void changeChecked(bool checked);private: void setLabelChecked(QLabel* label, bool checked);...
C++ (Qt)Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){ ui->setupUi(this); connect(ui->checkBox, &QAbstractButton::toggled, this, &Widget::changeChecked); setLabelChecked(ui->checkBox_label, ui->checkBox->isChecked()); connect(ui->checkBox_2, &QAbstractButton::toggled, this, &Widget::changeChecked); setLabelChecked(ui->checkBox_2_label, ui->checkBox_2->isChecked());} void Widget::changeChecked(bool checked){ if (!sender()) { return; } QLabel* label = sender()->parent()-> findChild<QLabel*>(sender()->objectName() + "_label"); if (label) { setLabelChecked(label, checked); }} void Widget::setLabelChecked(QLabel* label, bool checked){ label->setProperty("checked", checked); label->style()->unpolish(label); label->style()->polish(label); label->update();}