qt 将鼠标位置转换为图表坐标系
qt convert mouse position to chart coordinate system
我想在显示 QBarSeries 的 QChart 上显示 callout。
我正在努力研究如何将鼠标的位置转换为 qchart 坐标系,以便我可以将其用作标注中的锚点。
我想在
期间设置它
MainWindow::barSeriesHovered(bool status, int index, QBarSet *barset){}
事件。
我使用以下代码设法做到了:
auto point = QCursor::pos();
point = myChartView->mapFromGlobal(point);
auto pointF = myChartView->mapToScene(point);
pointF = myChartView->chart()->mapFromScene(point);
pointF = myChartView->chart()->mapToValue(point,myChartView->chart()->series().at(0));
myCallout->setAnchor(pointF);
也许不是最有效的使用方式,但确实有效
另一个缺点是,它总是出现在栏的边界,当你在栏内移动时它不会随鼠标光标移动,但是,它有效
我想在显示 QBarSeries 的 QChart 上显示 callout。 我正在努力研究如何将鼠标的位置转换为 qchart 坐标系,以便我可以将其用作标注中的锚点。 我想在
期间设置它MainWindow::barSeriesHovered(bool status, int index, QBarSet *barset){}
事件。
我使用以下代码设法做到了:
auto point = QCursor::pos();
point = myChartView->mapFromGlobal(point);
auto pointF = myChartView->mapToScene(point);
pointF = myChartView->chart()->mapFromScene(point);
pointF = myChartView->chart()->mapToValue(point,myChartView->chart()->series().at(0));
myCallout->setAnchor(pointF);
也许不是最有效的使用方式,但确实有效 另一个缺点是,它总是出现在栏的边界,当你在栏内移动时它不会随鼠标光标移动,但是,它有效