环境:window

语言:C++

触摸屏 触摸操作实现。通过鼠标左键或者右键点击事件,获取首尾点坐标(down时获取首点坐标,up时获取尾点坐标),计算x、y距离差值。根据差值判断移动方向。

代码:

1.在PreTranslateMessage()中,预先对消息事件进行处理。 m_bLeftButtonDown为鼠标左键Down标志位,用于记录鼠标左键是否点击,在右键Up信息中,只有此标志位为真,才记录鼠标左键Up信息(尾点)。

BOOL CMyDlg::PreTranslateMessage(MSG* pMsg)
{// TODO: 在此添加专用代码和/或调用基类if(WM_LBUTTONDOWN== pMsg->message){ if (m_bLeftButtonDown==FALSE){int xPos = LOWORD(pMsg->lParam);int yPos = HIWORD(pMsg->lParam);m_LastPoint.x=xPos;m_LastPoint.y=yPos;::ClientToScreen(pMsg->hwnd,&m_LastPoint);m_bLeftButtonDown=TRUE;}}else if (WM_LBUTTONUP==pMsg->message){    if (m_bLeftButtonDown){int xPos = LOWORD(pMsg->lParam);int yPos = HIWORD(pMsg->lParam);m_CrrentPoint.x=xPos;m_CrrentPoint.y=yPos;::ClientToScreen(pMsg->hwnd,&m_CrrentPoint);m_bLeftButtonDown=FALSE;CreateDirectMessage();}}return CDialogEx::PreTranslateMessage(pMsg);
}

2. 在CreateDirectMessage()函数中进行首尾点坐标计算,通过两点差值判断移动方向,函数返回值为int类型 。可通过此值调用后续的向上滑动、向下滑动、向左滑动、向右滑动的事件函数(SendUpMessage(),SendDownMessage(),SendLeftMessage(),SendRightMessage())。 函数中设定当鼠标down ,up首尾点差值大于30时判定调用滑动事件(即x,y移动距离大于30才判定为滑动事件,否者为点击事件)。

int CMyDlg::CreateDirectMessage()
{int iWidh=m_LastPoint.x-m_CrrentPoint.x;int iHei=m_LastPoint.y-m_CrrentPoint.y;if (abs(iHei)>abs(iWidh)){if (iHei>30){SendUpMessage();return 1;}else if(iHei<-30){SendDownMessage();return 2;}else{return 0;}}else {if (iWidh>30){SendLeftMessage();return 3;}else if(iWidh<-30){SendRightMessage();return 4;}else{return 0;}}
}

触摸屏 触摸操作 鼠标点击事件相关推荐

  1. php鼠标点击事件,javascript模拟鼠标点击事件的实例代码

    javascript触发模拟鼠标点击事件 事件触发器就是用来触发某个元素下的某个事件,IE下fireEvent方法,高级浏览器(chrome,firefox等)有dispatchEvent方法. 一般 ...

  2. 10,python中tkinter模块里的鼠标点击事件

    实践操作: from tkinter import * #鼠标点击事件的回调函数 def callback(event):print( "clicked at:", event.x ...

  3. jQuery鼠标点击事件

    概念 个人理解: jQuery鼠标点击事件是最常用的事件之一,当用户使用鼠标在浏览器窗口或元素上进行点击交互时触发的事件,都属于鼠标点击事件的范围.常见的鼠标操作有:单击.双击.右键等等. click ...

  4. UE4 鼠标点击事件 || 虚幻4 鼠标点击事件

    UE4  鼠标点击事件||虚幻4  鼠标点击事件 一 .预备工作 1. 打开关卡蓝图 2.在关卡蓝图中进行下列操作 二.静态网格物体的点击事件 1. 将静态网格物体拖拽到场景中,右击 进行如图操作 选 ...

  5. css禁用鼠标点击事件

    1.css禁用鼠标点击事件 .disabled { pointer-events: none; } 转载于:https://www.cnblogs.com/jiangtuzi/p/5728230.ht ...

  6. android 模拟点击localinstrumentation,Android Instrumentation模拟鼠标点击事件

    看了几遍网上的博客一直没有 模拟出鼠标点击事件和按钮事件,后来抱着试试态度再重试的时候终于有所斩获.下面把具体的情况记录一下: 首先我们必须了解类 Instrumentation: Instrumen ...

  7. [css] 怎样用纯CSS实现禁止鼠标点击事件?

    [css] 怎样用纯CSS实现禁止鼠标点击事件? pointer-events: none; 是css3新出现的属性,意思就是禁止鼠标点击事件,当元素中有这一属性时,链接.点击事件统统失效. 个人简介 ...

  8. 【Qt串口调试助手】1.3 - 重写ComboBox下拉框的鼠标点击事件,实现点击下拉框扫描可用串口

    由于ComboBox没有鼠标点击信号,所以如果想实现点击下拉框响应,需要重写ComboBox下拉框的鼠标点击事件.在点击事件中,添加扫描可用串口代码,实现点击下拉框时重新扫描串口.并且下拉框内容输出端 ...

  9. QT之鼠标点击事件学习

    最近在学习点击鼠标事件,在这分享给大家 window.h中的配置 #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow& ...

  10. java鼠标点击事件_Java 鼠标点击事件实例

    首先我们应该知道鼠标点击事件怎么实现 其部分代码如下 if (anyEvent.getButton() == MouseEvent.BUTTON1) {} e.getButton()返回值分别为NOB ...

最新文章

  1. window系统mysql无法输入和无法显示中文的处理配置
  2. C++ Primer 5th笔记(chap 18 大型程序工具)捕获异常
  3. eclipse 设置 默认编码为 utf-8
  4. struts2下面如何同时使用servlet,就是如何实现struts与servlet共存
  5. jquery去掉数组最后一个元素_从数组中删除最后一项
  6. 10个在线Web设计开发工具介绍
  7. [react] react的性能优化在哪个生命周期?它优化的原理是什么?
  8. jquery 逗号分割截取字符串_Python中常用的8种字符串操作方法
  9. Ubuntu 14.04 设置静态IP
  10. mybatis plus 插入生成id_Mybatis-Plus 3.3.0 发布,让你专注业务快速敏捷开发
  11. 【PAT乙】1083 是否存在相等的差 (20分) map
  12. Orchard详解--第八篇 拓展模块及引用的预处理
  13. The NMEA 0183 Protocol
  14. LCD1602单片机(STC51/STM32)驱动程序详解
  15. 笔记本电脑间的串口通信
  16. TCP/UDP 协议格式
  17. 上传大文件报错413问题处理
  18. 网页被劫持了该怎么办?dns被劫持如何修复?网页劫持介绍
  19. Appium+python自动化(三十二)- 代码写死一时爽,框架重构火葬场 - PageObject+unittest(超详解)...
  20. python实验——第一次

热门文章

  1. 古代到现在一些小国家的形成和解体
  2. python多线程爬取qq好友空间的留言
  3. 微软360度——成功与成长
  4. Excel转换成VCF
  5. No exception of type Exception can be thrown
  6. Banner图片轮播
  7. 攻防世界backup
  8. Qt 绘制南丁格尔玫瑰图
  9. 实现SDT(software-defined Things)的IOT案例(2)
  10. GNN学习笔记(三) Graph Neural Network概述