qt 鼠标点击事件

news/2024/12/22 18:28:31/

大概就这几种,

按左键右键

void QtWidgetsApplication7::mousePressEvent(QMouseEvent *event)
{//如果是鼠标左键按下if (event->button() == Qt::LeftButton) {QCursor cursor;cursor.setShape(Qt::ClosedHandCursor);QApplication::setOverrideCursor(cursor);offset = event->globalPos() - pos();}else if (event->button() == Qt::RightButton) {QCursor cursor(QPixmap(":/res/mouse.png"));QApplication::setOverrideCursor(cursor);}
}

释放事件

void QtWidgetsApplication7::mouseReleaseEvent(QMouseEvent *event)
{//释放事件QApplication::restoreOverrideCursor();
}

双击事件

void QtWidgetsApplication7::mouseDoubleClickEvent(QMouseEvent *event)
{if (event->button() == Qt::LeftButton) {if (windowState() != Qt::WindowFullScreen) {setWindowState(Qt::WindowFullScreen);}else {setWindowState(Qt::WindowNoState);}}
}

鼠标移动事件

void QtWidgetsApplication7::mouseMoveEvent(QMouseEvent *event)
{//移动过程中判断鼠标是左键点击并且移动,那么要用buttons,返回的是鼠标状态的集合if (event->buttons() & Qt::LeftButton) {//获取窗口应当移动到的位置QPoint windowpos = event->globalPos() - offset;this->move(windowpos);}
}

滚轮事件

void QtWidgetsApplication7::wheelEvent(QWheelEvent *event)
{//鼠标滚动远离使用者放大texteditif (event->delta() > 0) {qDebug() << "catch wheel event delta > 0" << endl;ui.textEdit->zoomIn();}else {qDebug() << "catch wheel event delta < 0" << endl;ui.textEdit->zoomOut();}
}


http://www.ppmy.cn/news/1557259.html

相关文章

springboot java ffmpeg 视频压缩、提取视频帧图片、获取视频分辨率

用到的maven依赖&#xff1a; lombok依赖就不贴出来了 <dependency><groupId>org.bytedeco</groupId><artifactId>ffmpeg-platform</artifactId><version>4.3.2-1.5.5</version></dependency><dependency><groupId&…

电脑除尘更换cpu和显卡硅脂过程及安装win11系统中遇到的问题

原由 电脑是2022款的显卡TRX3050ti 的Y7000p,在使用过程中发现电脑风扇声音很大&#xff0c;想来也是用很久没有清理过灰尘了&#xff0c;在拆卸视频中发现一个换硅脂的&#xff0c;刚好手头有&#xff0c;想来也没换过&#xff0c;所以就直接换了。但修完后直接打开却出现了无…

HarmonyOS(72)事件拦截处理详解

事件拦截 1、参考资料2、HitTestMode3、onTouchIntercept、onTouch、onClick事件执行顺序3.1、系统默认事件传递顺序3.2、子组件拦截事件1、参考资料 HarmonyOS(71) 自定义事件分发之TouchTestStrategy使用说明HarmonyOS(70) ArkUI 事件分发拦截,事件冲突解决方案HitTestModea…

Windows Server 2019 配置PHP环境(图文教程)

操作系统&#xff1a;Windows Server 2019运行模式&#xff1a;IIS10 fastcgi PHP(安装IIS的时候选择上CGI)软件版本&#xff1a;MySQL 5.7.37 解压版 / PHP 7.4.29 / PHP Manager 1.5.0 / phpMyAdmin 5.1.3 1、MySQL 5.7.37 解压版安装&#xff1a; 为什么我会选择解压版而不…

CodeSurfer 和 Tree-sitter对比

CodeSurfer 和 Tree-sitter 都是代码分析工具&#xff0c;但它们的设计理念、功能和使用场景有很大的不同。要决定在解析一个 C 项目 时选择哪个工具&#xff0c;我们需要全面对比它们的特点、优劣和适用场景。 1. 简介对比 CodeSurfer&#xff1a; 是一个专门用于静态分析代码…

Elasticsearch-DSL高级查询操作

一、禁用元数据和过滤数据 1、禁用元数据_source GET product/_search {"_source": false, "query": {"match_all": {}} }查询结果不显示元数据 禁用之前: {"took" : 0,"timed_out" : false,"_shards" : {&quo…

【Qt】显示类控件:QLabel、QLCDNumber、QProgressBar、QCalendarWidget

目录 QLabel QFrame 例子&#xff1a; textFormat pixmap、scaledContents alignment wordWrap、indent、margin buddy QLCDNumber 例子&#xff1a; QTimer QProgressBar 例子&#xff1a; QCalendarWidget 例子&#xff1a; QLabel 标签控件&#xff0c;用来显示…

故障诊断 | 一个小创新:特征提取+KAN分类

往期精彩内容&#xff1a; Python-凯斯西储大学&#xff08;CWRU&#xff09;轴承数据解读与分类处理 基于FFT CNN - BiGRU-Attention 时域、频域特征注意力融合的轴承故障识别模型-CSDN博客 基于FFT CNN - Transformer 时域、频域特征融合的轴承故障识别模型-CSDN博客 P…