2017-03-11 5 views
0

QCheckBox을 비활성화하면 마우스 클릭을 통과하도록 하위 클래스를 지정하려고합니다. 내 체크 박스가 비활성화되지 않은 경우 (isEnabled()true) Qt는 mousePressEvent()을 예상대로 호출합니다. 사용할 수 없게되면 호출이 발생하지 않습니다. 어떤 생각이라도 그것을 상상하는 방법?비활성화 된 QCheckBox에서 mousePressEvent()가 호출되지 않았습니다.

답변

1

설명하는 내용은 실제로 behavior입니다. source code을 보면 QWidget::event은 위젯이 사용 가능한 경우에만 mousePressEvent으로 호출됩니다.

해결책으로 mousePressEvent(QEvent *e) 대신 event을 무시하고 e->type() == QEvent::MouseButtonPress을 확인하십시오.

관련 문제