mousePressEvent() не вызывается для отключенного QCheckBox
Я пытаюсь подкласс QCheckBox
чтобы он пропускал щелчки мышью, если отключен. Когда мой флажок не отключен (isEnabled()
является true
), Qt называет его mousePressEvent()
как и ожидалось. Когда он отключен, звонки не происходят. Есть идеи как его перехитрить?
1 ответ
Решение
То, что вы описываете, действительно является документированным поведением. Если вы посмотрите на исходный код, вы увидите, что QWidget::event
только звонки mousePressEvent
если виджет включен.
В качестве решения вы можете переопределить event
вместо mousePressEvent(QEvent *e)
и проверьте, если e->type() == QEvent::MouseButtonPress
,