qt模拟鼠标事件

模拟鼠标事件

1、模拟鼠标按下事件

cpp 复制代码
        QPoint p = this->rect().center();
        QMouseEvent *pressEvent = new QMouseEvent(QEvent::MouseButtonPress,
                                                  p,
                                                  Qt::LeftButton,
                                                  Qt::LeftButton,
                                                  Qt::NoModifier);
        mousePressEvent(pressEvent);

2、模拟鼠标松开事件

cpp 复制代码
QMouseEvent *releaseEvent = new QMouseEvent(QEvent::MouseButtonRelease,
                                                    p,
                                                    Qt::LeftButton,
                                                    Qt::LeftButton,
                                                    Qt::NoModifier);
mouseReleaseEvent(releaseEvent);

3、模拟鼠标点击事件

按顺序模拟1、2的事件,代码如下:

cpp 复制代码
mousePressEvent(pressEvent);
mouseReleaseEvent(releaseEvent);

4、模拟鼠标移动事件

cpp 复制代码
QMouseEvent *moveEvent = new QMouseEvent(QEvent::MouseMove,
                                         p,
                                         Qt::LeftButton,
                                         Qt::LeftButton,
                                         Qt::NoModifier);
mousePressEvent(pressEvent);
mouseReleaseEvent(releaseEvent);
mouseMoveEvent(moveEvent); //新增移动事件刷新画线和十字线
相关推荐
张太行_1 小时前
C++中的析构器(Destructor)(也称为析构函数)
开发语言·c++
SteveKenny3 小时前
Python 梯度下降法(六):Nadam Optimize
开发语言·python
Hello.Reader4 小时前
深入浅出 Rust 的强大 match 表达式
开发语言·后端·rust
xrgs_shz6 小时前
MATLAB的数据类型和各类数据类型转化示例
开发语言·数据结构·matlab
来恩10039 小时前
C# 类与对象详解
开发语言·c#
komo莫莫da10 小时前
寒假刷题Day19
java·开发语言
ElseWhereR10 小时前
C++ 写一个简单的加减法计算器
开发语言·c++·算法
※DX3906※11 小时前
cpp实战项目—string类的模拟实现
开发语言·c++
wjs202411 小时前
Nginx 安装配置指南
开发语言