Qt - 坐标系及转换
屏幕与窗口
****屏幕坐标(绝对坐标) 窗口坐标(相对坐标)****
pos():描述:本控件到父控件的相对坐标
窗口的屏幕坐标(上图黑线)
描述:窗口左上角-屏幕原点
QPoint =this->pos()
centerWidet到pushbutton的距离(上图蓝线)
描述:button的父控件-centerWidet
ui->button->pos()
描述:button认一个爹
ui->pushButton->setParent(this);
描述:button的爹是谁
ui->pushButton->parent()
鼠标(光标)_屏幕坐标
描述:光标的父控件-屏幕
QPoint =cursor.pos()
#坐标转换 六个公式+补充公式
补充公式,鼠标事件的位置=鼠标光标的相对位置
鼠标光标的 相对位置
event->pose()
判断QPoint在QRect里面?用contains()
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/sunflower_2020/article/details/135693171
补充一些函数:
1、QPoint QWidget::mapToGlobal(const QPoint &pos) const
将小部件坐标转换为全局坐标。mapToGlobal(QPoint(0,0))可以得到小部件左上角像素的全局坐标。
2、QPoint QWidget::mapToParent(const QPoint &pos) const
将小部件坐标转换为父部件坐标。如果小部件没有父部件,则效果与mapToGlobal()相同。
3、QPoint QWidget::mapTo(const QWidget *parent, const QPoint &pos) const
将小部件的坐标转换为父部件的坐标系统,parent不能是0,必须是调用小部件的父部件。
4、QPoint QWidget::mapFromGlobal(const QPoint &pos) const
将全局坐标转换为小部件坐标。
5、QPoint QWidget::mapFromParent(const QPoint &pos) const
将父部件坐标转换为小部件坐标。如果小部件没有父部件,则效果与mapFromGlobal()相同。
6、QPoint QWidget::mapFrom(const QWidget *parent, const QPoint &pos) const
将小部件的坐标pos从父部件的坐标系统转换为小部件的坐标系统。parent不能是0,必须是调用小部件的父部件。
7、QPoint QMouseEvent::pos() const
返回鼠标光标相对于接收事件的小部件的位置。
8、QPoint QMouseEvent::globalPos() const
返回事件发生时鼠标光标的全局位置。
9、const QPointF &QMouseEvent::screenPos() const
以QPointF的形式返回鼠标光标相对于接收事件的屏幕的位置。这个函数是在Qt 5.0中引入的。