当前位置: 首页 > news >正文

[QT/C++]如何得知鼠标事件是由触摸事件转换而来的,使得鼠标触摸事件分离

依据来源:https://doc.qt.io/qt-5/qml-qtquick-mouseevent.html

具体是在event事件或者mouse系列事件中捕获到鼠标事件后,用如下代码判断鼠标事件是否由触摸事件转换而来的

    if(mouseEvent->source()==Qt::MouseEventSynthesizedBySystem){qDebug()<<"是由触摸事件转换而来的";}

通过该条件的一律返回,剩下的就是不由触摸事件生成的鼠标事件,由此做到鼠标与触摸事件的分离,使得触摸事件引起的鼠标事件不再干扰判断
更多信息从依据来源中抽取出来后如下,翻译由网易翻译完成。

此属性保存鼠标事件的源。

鼠标事件源可用于区分真正的鼠标事件和人工鼠标事件。当使用其他指向设备(如触摸屏和图形平板)时,如果应用程序没有使用实际的触摸或平板事件,则鼠标事件可能由操作系统或Qt本身合成。

取值可以是:
Qt.MouseEventNotSynthesized -最常见的值。在这些信息可用的平台上,该值表示该事件代表来自系统的真正鼠标事件。
Qt.MouseEventSynthesizedBySystem -指示鼠标事件是由平台从触摸或平板事件合成的。

Qt.MouseEventSynthesizedByQt -指示鼠标事件是由Qt从未处理的触摸或平板事件合成的。

Qt.MouseEventSynthesizedByApplication-指示鼠标事件是由应用程序合成的。这允许将应用程序生成的鼠标事件与来自系统或由Qt合成的鼠标事件区分开来。

这个属性是在Qt 5.7中引入的。

This property holds the source of the mouse event.

The mouse event source can be used to distinguish between genuine and
artificial mouse events. When using other pointing devices such as
touchscreens and graphics tablets, if the application does not make
use of the actual touch or tablet events, mouse events may be
synthesized by the operating system or by Qt itself.

The value can be one of:

Qt.MouseEventNotSynthesized - The most common value. On platforms
where such information is available, this value indicates that the
event represents a genuine mouse event from the system.
Qt.MouseEventSynthesizedBySystem - Indicates that the mouse event was
synthesized from a touch or tablet event by the platform.
Qt.MouseEventSynthesizedByQt - Indicates that the mouse event was
synthesized from an unhandled touch or tablet event by Qt.
Qt.MouseEventSynthesizedByApplication - Indicates that the mouse event
was synthesized by the application. This allows distinguishing
application-generated mouse events from the ones that are coming from
the system or are synthesized by Qt.

This property was introduced in Qt 5.7.

相关文章:

[QT/C++]如何得知鼠标事件是由触摸事件转换而来的,使得鼠标触摸事件分离

依据来源&#xff1a;https://doc.qt.io/qt-5/qml-qtquick-mouseevent.html 具体是在event事件或者mouse系列事件中捕获到鼠标事件后&#xff0c;用如下代码判断鼠标事件是否由触摸事件转换而来的 if(mouseEvent->source()Qt::MouseEventSynthesizedBySystem){qDebug()<&…...

消防态势标绘工具,为消防基层工作助力

背景介绍 无人机测绘技术在消防领域的应用越来越普及&#xff0c;高清的二维正射影像和倾斜摄影实景三维模型能为消防态势标绘提供高质量的素材&#xff0c;消防队急需一个简便易用的、能够基于这些二三维的高清地图成果进行态势标绘的工具软件&#xff0c;使得消防“六熟悉”…...

网络协议栈-基础知识

1、分层模型 1.1、OSI七层模型 1、OSI&#xff08;Open System Interconnection&#xff0c;开放系统互连&#xff09;七层网络模型称为开放式系统互联参考模型 &#xff0c;是一个逻辑上的定义&#xff0c;一个规范&#xff0c;它把网络从逻辑上分为了7层。 2、每一层都有相关…...

[Mongodb 5.0]聚合操作

本文对应Aggregation Operations — MongoDB Manual 正文 此章节主要介绍了Aggregation Pipeline&#xff0c;其实就是将若干个聚合操作放在管道中进行执行&#xff0c;每一个聚合操作的结果作为下一个聚合操作的输入&#xff0c;每个聚合指令被称为一个stage。 在正式开始学…...

Shell 变量

Shell 变量 定义变量时&#xff0c;变量名不加美元符号&#xff08;$&#xff0c;PHP语言中变量需要&#xff09;&#xff0c;如&#xff1a; your_name"runoob.com" 注意&#xff0c;变量名和等号之间不能有空格&#xff0c;这可能和你熟悉的所有编程语言都不一样…...

SRM订单管理:优化供应商关系

一、概述SRM订单管理的概念&#xff1a; SRM订单管理是指在供应商关系管理过程中&#xff0c;有效管理和控制订单的创建、处理和交付。它涉及与供应商之间的沟通、合作和协调&#xff0c;旨在实现订单的准确性、可靠性和及时性。 二、SRM订单管理的流程&#xff1a; 1. 订单创…...

Unity 实现2D地面挖洞!涂抹地形(碰撞部分,方法二)

文章目录 前言一、初始化虚拟点1.1点结构:1.2每个点有的状态:1.3生成点结构: 二、实例化边缘碰撞盒2.1计算生成边缘碰撞盒 三、涂抹部分3.1.虚拟点3.2.鼠标点3.3.内圈3.4.外圈 四、关于优化结语: 前言 老规矩先上效果图 继上一篇涂抹地形文章讲解发出后&#xff0c;有不少网友…...

简化Gerber数据传输过程丨GC PowerPlace简介

离线编程&#xff0c;保持高效 GC PowerPlace提供了客户驱动的增强功能和新功能&#xff0c;以简化Gerber数据传输过程。GC PowerPlace是汇编编程的焦点&#xff0c;它接受几乎任何来源的数据&#xff0c;并为大多数PCB制造应用程序生成程序和文件。 功能特征 01、主要特点 …...

rust关于项目结构包,Crate和mod和目录的组织

rust 最近开始学习rust语言。感觉这门语言相对java确实是难上很多。开几个文章把遇到的问题记录一下 rust关于包&#xff0c;Crate 关于包&#xff0c;Crate这块先看看官方书籍怎么说的 crate 是 Rust 在编译时最小的代码单位。如果你用 rustc 而不是 cargo 来编译一个文件…...

如何微调优化你的ChatGPT提示来提高对话质量

ChatGPT会话质量很大程度上取决于微调优化提示的艺术。本文旨在阐明微调提示的复杂性&#xff0c;以确保你可以充分发挥ChaGPT这一颠覆性工具的潜力。 与ChatGPT对话的关键部分是“提示”。即&#xff1a;你输入的问题或陈述&#xff0c;它决定了人工智能的响应。类似于引导对…...

微信小程序实现下拉刷新

一、设置微信小程序所有页面都可以下拉刷新 1、在app.json的"window"中进行配置 &#xff08;1&#xff09;把"backgroundTextStyle":“light"改为"backgroundTextStyle”:“dark” &#xff08;2&#xff09;添加"enablePullDownRefresh…...

一、编程规约

一、编程规约 &#xff08;一&#xff09;命名风格 不以下划线&#xff08;_&#xff09;或美元符号($)开始和结束不用中文拼音避免歧视或侮辱性词语类名用UpperCamelCase风格&#xff0c;以下情况例外&#xff1a;DO/PO/DTO等方法名、参数名、成员变量、局部变量使用lowerCam…...

pytest数据驱动 pandas

pytest数据驱动 pandas 主要过程&#xff1a;用pandas读取excel里面的数据&#xff0c;然后进行百度查询&#xff0c;并断言 pf pd.read_excel(data_py.xlsx, usecols[1,2])print(pf.values)输出&#xff1a;[[‘听妈妈的话’ ‘周杰伦’] [‘遇见’ ‘孙燕姿’] [‘伤心太平…...

Modbus工业RFID设备在自动化生产线中的应用

传统半自动化生产线在运作的过程&#xff0c;因为技工的熟练程度&#xff0c;专业素养的不同&#xff0c;在制造过程中过多的人为干预&#xff0c;工厂将很难对每条生产线的产能进行标准化管理和优化。如果半自动化生产线系统是通过前道工序的作业结果和检测结果来决定产品在下…...

见证马斯克的钞能力,AI.com再次易主,OpenAI投掷1100万美金购买AI.com刚满五个月

我们又一次见证了马斯克的钞能力。上次是去年他用440亿美元买下推特。 高价值的AI.com域名在2021年易主后&#xff0c;闲置过一段时间&#xff0c;今年2月份突然重定向到ChatGPT。 对于ChatGPT用户来说&#xff0c;每次访问都要在浏览器里敲这些字符&#xff1a;https://chat.o…...

linux vi/vim

目录 什么是 vim&#xff1f;vi/vim的使用命令模式输入模式底线命令模式工作模式总结 vi/vim按键说明一般模式可用的光标移动、复制粘贴、搜索替换等移动光标搜索替换删除、复制与粘贴 指令行模式可用的按钮储存、离开等指令vim 环境的变更 所有的 Unix Like 系统都会内建 vi 文…...

算法与数据结构-哈希算法

文章目录 什么是哈希算法哈希算法的应用安全加密唯一标识数据校验散列函数负载均衡数据分片分布式存储 一致性哈希算法 什么是哈希算法 哈希算法的定义和原理非常简单&#xff0c;基本上一句话就可以概括了。将任意长度的二进制值串映射为固定长度的二进制值串&#xff0c;这个…...

企业做直播时如何选择适合自己的直播平台?

企业做直播时如何选择适合自己的直播平台&#xff1f; 可以通过对比不同直播平台的技术能力、服务质量、安全性等方面的内容&#xff0c;选择最适合自己的直播平台。 企业做直播如何选择直播平台 我的文章推荐&#xff1a; [视频图文] 线上研讨会是什么&#xff0c;企业对内对…...

【JavaWeb】实训的长篇笔记(下)

文章目录 八、功能实现1、注册功能2、登录功能3、问题说明4、首页数据显示5、后台管理 八、功能实现 1、注册功能 jsp&#xff1a;能够在页面中把数据动态化&#xff0c;jsp和html在元素标签上是无区别的&#xff0c;区别是html中写上java代码就成了jsp文件。filename.jsp。 需…...

linux bash快捷键

1、^abc-^-123: 这个命令用于运行上一个命令&#xff0c;并将其中的"abc"替换为"123"。 示例&#xff1a;如果上一个命令是echo abc&#xff0c;则运行^abc-^-123后会执行命令echo 123。 2、!!: 这个命令用于重复执行上一条命令。 示例&#xff1a;如果上…...

VLC for Unity:工业级高性能视频渲染替代方案

1. 这不是“又一个视频插件”——VLC for Unity 解决的是 Unity 视频管线里最顽固的硬伤 你有没有在 Unity 项目里&#xff0c;把一段 4K H.265 的监控流拖进 VideoPlayer 组件&#xff0c;结果帧率直接掉到 8 FPS&#xff0c;GPU 占用飙到 95%&#xff0c;而 CPU 却只用了 30%…...

为什么你的PS手柄在Windows上无法畅玩游戏?3步解锁完美兼容方案

为什么你的PS手柄在Windows上无法畅玩游戏&#xff1f;3步解锁完美兼容方案 【免费下载链接】DS4Windows Like those other ds4tools, but sexier 项目地址: https://gitcode.com/gh_mirrors/ds/DS4Windows 你是否曾经兴奋地想在PC上使用心爱的PlayStation手柄&#xff…...

MySQL报错注入与堆叠注入的底层原理与实战对抗

1. 这不是“学SQL注入”&#xff0c;而是重建你对数据库交互的认知边界2021年7月8日这个日期&#xff0c;对很多刚入CTF圈的朋友来说&#xff0c;可能只是训练平台里一个普通题目的提交时间戳。但对我而言&#xff0c;那天在调试一道看似简单的报错注入题时&#xff0c;连续卡了…...

UE动画师避坑指南:状态机(State Machine)乱成一团麻?试试这3个整理技巧和最佳实践

UE动画师高效工作指南&#xff1a;状态机结构化管理的3个核心策略当项目进入中后期开发阶段&#xff0c;动画蓝图的状态机往往会变成一团纠缠不清的"意大利面条"。每次添加新功能都像是在已经混乱的线团上再打一个结&#xff0c;最终导致团队协作效率直线下降。我曾参…...

Exchange渗透实战:从外部侦察到域控接管全链路

1. 这不是“黑进邮箱”的速成课&#xff0c;而是真实红队作业的切片回放Exchange Server 渗透测试&#xff0c;这个词在很多刚入行的朋友眼里&#xff0c;可能等同于“爆破邮箱密码”“下载邮件”“发钓鱼邮件”。但我在过去七年参与的23次企业红队评估中&#xff0c;真正能从外…...

为什么你需要一个独立的PCK文件处理工具?3个自动化工作流解析

为什么你需要一个独立的PCK文件处理工具&#xff1f;3个自动化工作流解析 【免费下载链接】GodotPckTool Standalone tool for extracting and creating Godot .pck files 项目地址: https://gitcode.com/gh_mirrors/go/GodotPckTool 在Godot游戏开发中&#xff0c;PCK资…...

ABAP 关键用户版本语句白名单全解析:从语法限制到实战案例

在很多 SAP S/4HANA Cloud 项目里,业务关键用户已经不再满足于只提需求、等 IT 做开发。通过 Custom Fields and Logic 这类 Fiori 应用,关键用户可以直接在浏览器里写 ABAP 代码,自助实现校验、默认值、计算逻辑等扩展。这背后真正跑的,就是一个专门为关键用户设计的受限语…...

用Python解放你的记忆:Genanki自动化Anki卡片生成终极指南

用Python解放你的记忆&#xff1a;Genanki自动化Anki卡片生成终极指南 【免费下载链接】genanki A Python 3 library for generating Anki decks 项目地址: https://gitcode.com/gh_mirrors/ge/genanki 你是否曾为手动创建数百张Anki卡片而头痛&#xff1f;是否想过将学…...

鸿蒙数理体系创作说明 (鸿蒙数学一阶完结后更新说明)

本套鸿蒙数学体系&#xff0c;并非凭空独创&#xff0c;而是站在华夏千年古数根基之上&#xff0c;融合西方近代数理实证体系&#xff0c;双向重构、文明合一所诞生的全新本源数理框架。一、本体系继承、吸纳的【华夏传统古数核心本源】整套体系的底层大道骨架、思维范式、宇宙…...

ARM SVE指令集:UQDECD/UQINCD饱和运算详解

1. ARM SVE指令集概述在当今计算密集型应用领域&#xff0c;向量处理技术已成为提升性能的关键手段。作为ARMv8架构的重要扩展&#xff0c;可扩展向量扩展(Scalable Vector Extension, SVE)突破了传统SIMD指令集的固定宽度限制&#xff0c;为高性能计算和机器学习工作负载提供了…...