qt linux窗口大小变化后刷新鼠标事件

qt linux窗口大小变化后刷新鼠标事件,第1张

鼠标事件使用的时候,需要加头文件。

鼠标移动事件默认情况下,触发事件需要点击一下,才能触发。可设置为自动触发。一个鼠标事件包含一些指定的接受标志flag用于指出该事件是否会被接收和处理,如果鼠标指针所在的父窗口不接收该事件则可以调用函数ignore()予以忽略。

Qt是一个跨平台的C++图形用户界面库,由挪威TrollTech公司出品,包括Qt、基于FrameBuffer的QtopiaCore、快速开发工具QtDesigner和国际化工具QtLinguist等部分。Qt支持所有的UNIX系统,当然也包括Linux系统,还支持WinNT/Win2k、Windows95/98平台。

关键是这一句setMouseTracking(true)加在构造函数里面,根据qt的帮助文档,mousemoveEvent事件如果mouserTrack为false,那么只有鼠标按下才会执行,而且默认是false,所以需要把窗口事件设置一下

然后就简单了

protected:

    void mouseMoveEvent(QMouseEvent * event)//添加mouseMover事件响应

    //下面具体代码

void GetMousePoint::mouseMoveEvent(QMouseEvent *event)

{

    QString pStr("%1,%2")

    pStr = pStr.arg(event->pos().x()).arg(event->pos().y())//这里pos是坐标,你把坐标按比例转换为你的刻度尺就可以了

    ui->label->setText(pStr)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8471073.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-16
下一篇 2023-04-16

发表评论

登录后才能评论

评论列表(0条)

保存