Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ QTMouseEvent localPos()具有偏移量_C++_Qt - Fatal编程技术网

C++ QTMouseEvent localPos()具有偏移量

C++ QTMouseEvent localPos()具有偏移量,c++,qt,C++,Qt,使用MousePresseEvent(QMouseEvent*event)注册事件,并使用QPointF localPos(event->localPos())读取坐标;结果是读取的y坐标偏移了大约10 为什么会这样?在阅读了QWidget的文档后,我找到了函数mapFromGlobal() 下面返回正确的映射坐标: QPoint globalPos(event->globalPos()); QPoint localPos(ui.Picture->mapFromGlobal(glob

使用MousePresseEvent(QMouseEvent*event)注册事件,并使用QPointF localPos(event->localPos())读取坐标;结果是读取的y坐标偏移了大约10


为什么会这样?

在阅读了
QWidget
的文档后,我找到了函数
mapFromGlobal()

下面返回正确的映射坐标:

QPoint globalPos(event->globalPos());
QPoint localPos(ui.Picture->mapFromGlobal(globalPos));

告诉我们更多,你怎么知道你有一个偏移量?您使用哪个值进行比较?我显示单击的坐标,并且有视觉反馈。