我有一个QwtPlot
,我需要点击它来选择一个点。
我正在使用QwtPickerClickPointMachine
和QwtPlotPicker
类来执行此操作:
QwtPickerClickPointMachine picker_m = new QwtPickerClickPointMachine();
QwtPlotPicker d_picker = new QwtPlotPicker(QwtPlot::xBottom, QwtPlot::yLeft,
QwtPlotPicker::CrossRubberBand, QwtPicker::AlwaysOn,
dataPlot->canvas()); // dataPlot == QwtPlot
d_picker->setStateMachine(picker_m);
connect(d_picker, SIGNAL(selected(QPointF)), this, SLOT(test(QPointF)));
在我的测试功能上,我只是打印一个输出:
void MyClass::test(QPointF point)
{
qDebug() << "test";
}
但问题是当我点击QwtPlot
输出时是:
test
test
test
似乎是三次打电话。我不知道为什么会这样。有人可以给我一个解释吗?