Любой хороший способ сделать checkbox readonly, но также не серый > (едва заметен).
- Я использовал
setEnabled(bool)
, который работает, но этот флажок затемлен и едва читается - Я могу реагировать на сигнал переключения и reset состояние. Но мне нужен какой-то флаг, чтобы определить, доступно ли окно только для чтения, а затем reset состояние проверки, значит, мне нужно создать свой собственный класс
CheckBox
. -
setCheckable
тоже не работает, он не позволяет мне установить проверенное состояние вообще:cb = this->ui->cb_RealWorld->isCheckable(); this->ui->cb_RealWorld->setCheckable(true); this->ui->cb_RealWorld->setChecked(someValue); this->ui->cb_RealWorld->setCheckable(cb);
Поэтому лучше всего использовать функцию enable/disable и принять стиль с серым цветом.
------- Изменить -------
Следуя примерам стилей, я надеялся, что смогу установить флажок отключенного типа, как тот, который включен. До сих пор не удалось сделать это. Более конкретно: изменение значка, как в examples, не работает для меня, возможно, потому, что я использую Windows, и значки недоступны по пути, как в примерах.
PS: Связанный, но здесь нет ответа
Отключить QCheckbox непростым способом
Qt - Как отключить QCheckBox при сохранении состояния проверки?