문제
동일한 부모 위젯에 배치 된 내 응용 프로그램에는 몇 가지 그룹 상자가 있으며 각 QWTPlot의 자식 인스턴스가 제공됩니다.사용자는 마우스 (줌, 패닝 ...)를 통해 플롯으로 작동 할 수 있습니다.
그룹 상자가 현재 작동하는 사용자 (포커스 그룹 상자)가있는 트랙을 유지하고 싶습니다.그러나 이벤트는 표준 방식으로 처리되므로 사용자가 플롯으로 작동하면 마우스 이벤트 가이 플롯에 의해 소비됩니다.나는 사용자가 중첩 된 위젯으로 수행하는 작업을 상관없이 특정 그룹 상자를 사용하는 것을 알고 싶습니다.
모든 제안?
해결책
OK 솔루션을 발견했습니다.QGroupBox는 구현되어야합니다 (예 :
class CustomGroupBox : public QGroupBox {
Q_OBJECT
public:
CustomGroupBox(QWidget *parent = 0) : QGroupBox(parent);
CustomGroupBox(const QString &title, QWidget* parent = 0) : QGroupBox(title, parent);
signals:
void customReleased();
protected:
void mouseReleaseEvent(QMouseEvent* event) {
emit customReleased();
QGroupBox::mouseReleaseEvent(event);
}
};
.
다음 내의 모든 그룹 상자의 CustomReleted ()를 Sender () 객체를 처리하고 활성 그룹 상자를 추적 할 수있는 하나의 슬롯에 연결할 수 있습니다.
제휴하지 않습니다 StackOverflow