Как сделать жирный шрифт для QCheckBox - PullRequest
0 голосов
/ 24 апреля 2020

У меня есть следующие QCheckBoxes, которые будут включать / отключать аварийные сигналы, как показано ниже.

Проблема У меня есть, как мне изменить шрифт слов «ON» и «ВЫКЛ» только для того, чтобы сделать их жирным ? Я не уверен, как объединить жирный шрифт с жирным шрифтом в QCheckbox.

cbox1

cbox2

Ниже фрагмента код, который у меня есть:

void FilterPCDInterface::on_disable123_toggled(bool checked)
{
    if(ui->disable123->isChecked())
    {
        if(checked)
        {
            ui->disable123->setStyleSheet("QCheckBox {color: red}");
            ui->enable123->setStyleSheet("QCheckBox {color: green}");
            ui->disable123->setText("Alarms Zones Disabled: ON");
            ui->enable123->setText("Enable All Alarms: OFF");

            ui->enable123->setChecked(false);
            ui->enableZone1->setEnabled(false);
            ui->enableZone2->setEnabled(false);
            ui->enableZone3->setEnabled(false);
        }
    }
    if(!ui->disable123->isChecked())
    {
        ui->enableZone1->setEnabled(true);
        ui->enableZone2->setEnabled(true);
        ui->enableZone3->setEnabled(true);
        ui->disable123->setStyleSheet("QCheckBox {color: red}");
        ui->disable123->setText("Alarms Zones Disabled: OFF");

        ui->enable123->setEnabled(true);
        ui->enable123->setChecked(true);
        ui->disable123->setEnabled(false);

    }
}

Что я сделал до сих пор:

Я прошел следующие посты, чтобы помочь мне разобраться в проблеме, но безуспешно. Я консультировался с этим , также я наткнулся на этот другой источник , который в основном взят из официальной документации. Но это не объясняет, как соединить жирный шрифт с жирным шрифтом. Кажется, что лучшим способом было бы использовать QFont include, но я не уверен, как применить его к QCheckbox, потому что я не уверен, как комбинировать разные шрифты.

Спасибо за указание правильное направление о том, как решить эту проблему.

1 Ответ

2 голосов
/ 25 апреля 2020

Вы можете использовать QCheckBox с QLabel в горизонтальной компоновке. Так и становится,

QString labelText = QString("Enable All Alarms <strong>%1</strong>").args(status)
ui->whateverQLabel->setText(labelText)
       QHBoxLayout
             /\
            /  \
           /    \
   QCheckbox   QLabel(label)
...