QCustomPlot 鼠标消息获取,以及对应坐标转换
Posted Co......de 快乐&悲伤
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QCustomPlot 鼠标消息获取,以及对应坐标转换相关的知识,希望对你有一定的参考价值。
1 首先在 MainWindow.h 中加入 消息处理程序(槽)
private slots: void my_mouseMove(QMouseEvent* event);
2 在 MainWindow.cpp 中实现 (槽)
void MainWindow::my_mouseMove(QMouseEvent* event) { //获取鼠标坐标点 int x_pos = event->pos().x(); int y_pos = event->pos().y(); // 把鼠标坐标点 转换为 QCustomPlot 内部坐标值 (pixelToCoord 函数) // coordToPixel 函数与之相反 是把内部坐标值 转换为外部坐标点 float x_val = ui->plot->xAxis->pixelToCoord(x_pos); float y_val = ui->plot->yAxis->pixelToCoord(y_pos); // 然后打印在界面上 ui->label->setText(tr("(%1 %2 || %3 %4)").arg(x_pos).arg(y_pos).arg(x_val).arg(y_val)); }
3 把 QCustomPlot 的 鼠标移动信号 与 槽 链接 起来
connect(ui->plot, SIGNAL(mouseMove(QMouseEvent*)), this, SLOT(my_mouseMove(QMouseEvent*)));
以上是关于QCustomPlot 鼠标消息获取,以及对应坐标转换的主要内容,如果未能解决你的问题,请参考以下文章