그래서 저는 버튼으로 사용하고있는 커스텀 QLabel 클래스를 가지고 있습니다. 레이블을 클릭하면 배경색이 빨간색에서 녹색으로 바뀝니다. 마우스 놓기 이벤트에서 배경은 다시 빨간색으로 바뀝니다. 그러나 위젯의 "클릭 된"신호에 슬롯을 추가하면 마우스 놓기 이벤트가 절대로 발생하지 않는 것처럼 보입니다. 레이블은 녹색으로 유지됩니다. 지금은 레이블이 클릭되면 QMessageBox가 표시됩니다. 그러나 메시지 상자를 닫은 후에도 레이블은 녹색으로 유지됩니다. 나는 focusOutEvent를 배경을 빨간색으로 바꾼 동일한 슬롯에 연결하려고 시도했지만 여전히 작동하지 않습니다. 마우스를 놓은 후 단추를 빨간색 배경으로 되돌리려면 어떻게합니까? 나는 이것이 의미가 있기를 바랍니다. 어떤 아이디어? 사용자가 마우스를 출시 그렇게 할 때 ...어떻게 Qt mouseReleaseEvent가 실행되지 않습니까?
setStyleSheet(sty);
style()->unpolish(this);
style()->polish(this);
와우, 좋은 생각! 그것은 작동합니다! 왜 내가 그렇게 생각하지 않았는지 모르겠다. 아무튼 감사 해요:) – Nickersoft