深入探索Qt的坐标系统

本文深入探讨Qt的坐标系统,通过鼠标事件获取坐标信息,研究坐标在放大、使用QPixmap时的变化。示例展示了窗口坐标与QPixmap坐标系统的独立性,以及scale()函数对坐标和像素大小的影响。
摘要由CSDN通过智能技术生成

深入探索Qt的坐标系统

获得坐标信息:

为了更清楚地获得坐标信息,我们这里利用鼠标事件,让鼠标点击左键时输出该点的坐标信息。

1.在工程中的dialog.h文件中添加代码。

添加头文件: #include <QMouseEvent>

在public中添加函数声明:void mousePressEvent(QMouseEvent *);

然后到dialog.cpp文件中:

添加头文件: #include <QDebug>

定义函数:

void Dialog::mousePressEvent(QMouseEvent *event)
{
   qDebug() << event->pos();
}

这里应用了qDebug()函数,利用该函数可以在程序运行时将程序中的一些信息输出,在Qt Creator中会将信息输出到其下面的Application Output窗口。这个函数很有用,在进行简单的程序调试时,都是利用该函数进行的。我们这里利用它将鼠标指针的坐标值输出出来。

2.然后更改重绘事件函数。

void Dialog::paintEvent(QPaintEvent *)
{
    QPainter painter(this);
    painter.drawRect(0,0,50,50);
}

我们绘制了一个左上顶点为(0,0),宽和高都是50的矩形。

3.这时运行程序。并在绘制的矩形左上顶点点击一下鼠标左键。效果如下。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值