qt QScatterSeries - сигнал щелчка отправляется в ChartView mousePressEvent
У меня есть собственная реализация QChartView, где я могу масштабировать. (Класс "ChartView" из этого примера) Там у меня есть mousePressEvent.
Теперь я хотел добавить QScatterSeries и соединить сигнал щелчка с пользовательским слотом. К сожалению, как только я нажимаю на свой QScatterSeries, в мой слот ChartView mousePressEvent посылается только сигнал, а не в мой слот QScatterSeries mypoint_clicked.
Я также добавил сигнал зависания QScatterSeries, который отлично работает.
connect(myScatterSeries, SIGNAL(hovered(QPointF,bool)), this, SLOT(mypoint_hovered(QPointF,bool)));
connect(myScatterSeries, SIGNAL(clicked(QPointF)), this, SLOT(mypoint_clicked(QPointF)));
1 ответ
Просто гадать здесь.
mousePressEvent()
это не слот, а обработчик событий. я думаю что QChartView::mousePressEvent()
в некоторой степени отвечает за обработку событий нажатия мыши на графике и отправку их в серии.
Если вы переопределены ChartView::mousePressEvent()
без явного вызова QChartView::mousePressEvent()
чтобы переслать событие, вы можете помешать нормальной обработке события отправить событие в серию. И поэтому QScatterSeries::clicked()
никогда не излучается.