Qt:如何找到相对于图像的Mouseclick的位置

时间:2018-11-08 08:25:20

标签: qt mouseevent mousepress

我想实现一个图像编辑器。我在QHBoxLayout的QLabel中有一个QPixmap。我在父窗口小部件中覆盖了mousePressEvent。发生mousePressedEvent时,

data1

指向相对于指针(鼠标)移动的位置。位移是QLabel到QWidget角的距离。调整窗口大小时,它会变大。如何找到此位移矢量?我想在QPixmap上鼠标的确切位置绘制一个像素。 请注意,以下方法无济于事:

 event->pos() = QPoint(271,115)

这些给出所有不同的位置。在Internet上或Qt的文档中没有进行搜索可以使我更接近答案。预先谢谢你。

1 个答案:

答案 0 :(得分:1)

最后,在vahancho的帮助下,我已经部分弄清楚了。带有QLabel的QPixmap的位置很难确定,但是我可以禁止QLabel调整大小。因此,我将QLabel的大小设置为图像大小。

pm_imageLabel->setPixmap(m_pixmap);
pm_imageLabel->setFixedSize(m_pixmap.size());

我覆盖了QLabel类的内部中的mousePressed。这样,event-> pos是正确的。

谢谢。