在 QCustomPlot 中,你可以使用 mousePressEvent
事件来捕获鼠标点击事件,并通过坐标转换函数获取对应的坐标值。以下是一个示例代码,用于在鼠标点击时显示对应点的坐标值:
void YourWidget::mousePressEvent(QMouseEvent *event)
{
if (event->button() == Qt::LeftButton)
{
// 获取鼠标点击位置的像素坐标
QPoint clickPos = event->pos();
// 像素坐标转换为图表坐标
double x = ui->yourQCustomPlot->xAxis->pixelToCoord(clickPos.x());
double y = ui->yourQCustomPlot->yAxis->pixelToCoord(clickPos.y());
// 将坐标值显示出来(可根据需要进行处理)
qDebug() << "Clicked at: (" << x << ", " << y << ")";
}
// 继续处理其他操作或传递事件
QWidget::mousePressEvent(event);
}
这里假设你已经创建了一个名为 yourQCustomPlot
的 QCustomPlot 对象,并将其放置在名为 YourWidget
的窗口小部件中。在鼠标左键点击时,会将该点的横纵坐标值打印到调试输出窗口(使用 qDebug() 函数),你可以根据自己的需求进行进一步处理和显示方式定制化。
内容由零声教学AI助手提供,问题来源于学员提问