CN106249976A - 一种用于数字示波器触摸屏的多点触控方法 - Google Patents
一种用于数字示波器触摸屏的多点触控方法 Download PDFInfo
- Publication number
- CN106249976A CN106249976A CN201610670522.1A CN201610670522A CN106249976A CN 106249976 A CN106249976 A CN 106249976A CN 201610670522 A CN201610670522 A CN 201610670522A CN 106249976 A CN106249976 A CN 106249976A
- Authority
- CN
- China
- Prior art keywords
- touch
- touch screen
- coordinate
- function
- lifting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/044—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by capacitive means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/0416—Control or interface arrangements specially adapted for digitisers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/041—Indexing scheme relating to G06F3/041 - G06F3/045
- G06F2203/04104—Multi-touch detection in digitiser, i.e. details about the simultaneous detection of a plurality of touching locations, e.g. multiple fingers or pen and finger
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了一种用于数字示波器触摸屏的多点触控方法,数字示波器通过USB接口外接有触摸屏,触摸屏为电容触摸屏,数字示波器采用Windows7操作系统,可自动识别触摸屏,免驱动安装,若系统不能识别触摸屏,可安装触摸屏厂家提供的驱动程序。本发明通过Windows的消息函数接收触控点参数,并根据算法对用户操作手势进行判断,实现波形水平缩放及滑动、垂直缩放及平移的功能,为用户提供了更加友好、便捷的操作方式,并提高了产品的亮点。
Description
技术领域
本发明涉及数字示波器领域,具体涉及一种用于数字示波器触摸屏的多点触控方法。
背景技术
在数字示波器中,为了方便用户使用,提供友好的操作界面,常采用外接触摸屏的方式。触摸屏主要包括电阻式和电容式两种。电阻式触摸屏是通过压力感应进行工作的。将矩形区域中触摸点(X,Y)的物理位置转换为代表X坐标和Y坐标的电压,电信号经过转换电路送到处理器,通过运算转化为屏幕上的X、Y坐标值。电阻式触摸屏的成本较为低廉,若将其设计成多点触控,当两点同时受压时,屏幕的压力变得不平衡,导致触控出现误差,因而多点触控的实现程度较难。电容式触摸屏是利用人体的电流感应进行工作的。当手指触摸时,由于人体电场,手指和触摸屏表面形成一个耦合电容,对于高频电流来说,电容是直接导体,于是手指从接触点吸走一个很小的电流,控制器通过对电容屏四个角上的电极电流比例的精确计算,得到触摸点的位置。电容屏通过将屏幕分块,在每一个区域里设置一组独立工作的互电容模块,可以独立检测到各区域的触控情况,经过处理后即实现了多点触控。
目前国内的示波器,提供触摸屏操作的产品较少,主要是以键盘配合菜单的操作方式。即使有部分的示波器产品提供了触摸屏的操作方式,也基本仅限于单点触摸的工作方式,诸如波形水平及垂直缩放、水平滑动、垂直平移的功能均未提供。
发明内容
针对现有的数字示波器外接触摸屏只能单点触摸的问题,本发明提供了一种用于数字示波器触摸屏的多点触控方法。
本发明采用以下的技术方案:
一种用于数字示波器触摸屏的多点触控方法,数字示波器通过USB接口外接有触摸屏,触摸屏的多点触控方法包括:
步骤1:初始化,通过系统函数GetSystemMetrics(SM_DIGITIZER)检测触摸屏是否接入示波器,若电容触摸屏接入示波器,则通过系统函数GetSystemMetrics(SM_MAXIMUMTOUCHES)得到触摸屏支持的触控输入数量;
步骤2:功能注册,在需要响应多点触控的窗口类中,通过系统函数RegisterTouchWindow()进行触控操作注册,得到触控操作时的WM_TOUCH消息;
步骤3:消息响应,添加WM_TOUCH消息响应函数,得到WM_TOUCH消息中传递的触控点数量及触控点数据结构信息,从触控点数据结构信息中得到当前的触摸状态,触摸状态包括按下、移动和抬起三个操作状态,当检测到TOUCHEVENTF_DOWN时,记录当前为按下状态;当检测到TOUCHEVENTF_MOVE时,记录当前为移动状态;当检测到TOUCHEVENTF_UP时,记录当前为抬起状态,并同时记录各状态的坐标值;
步骤4:判断触控点数据结构信息是否为抬起状态,若为抬起状态,则执行步骤5;否则执行步骤3;
步骤5:判断得到的触控点数量是否为1,若触控点数量为1,则为单点移动操作,执行步骤6;若触控点数量不为1,则为两点缩放操作,执行步骤7;
步骤6:单点移动,判断按下状态到抬起状态过程中的X方向及Y方向移动的距离,若X方向移动的距离大于Y方向移动的距离,则为水平滑动,若抬起时的X坐标大于按下时的X坐标,则向右移动,反之则向左移动;若X方向移动的距离小于Y方向移动的距离,则为垂直移动,若抬起时的Y坐标小于按下时的Y坐标,则向上平移,反之则向下平移;
步骤7:两点缩放,分别计算两个触控点的X方向及Y方向移动的距离,分别记为X1、Y1和X2、Y2,若X1大于Y1并且X2大于Y2,则执行水平缩放,即改变示波器的时基,若第一个触控点对应的抬起时的X坐标小于其按下时的X坐标,则减小示波器的时基,执行水平放大功能,反之则增大示波器的时基,执行水平压缩功能;若X1小于Y1并且X2小于Y2,则执行垂直缩放,即改变示波器的垂直量程,若第一个触控点对应的抬起时的Y坐标小于其按下时的Y坐标,则减小示波器的垂直量程,执行垂直放大功能,反之则增大示波器的垂直量程,执行垂直压缩功能。
优选地,所述触摸屏为电容触摸屏。
本发明具有的有益效果是:
本发明提供的用于数字示波器触摸屏的多点触控方法,通过Windows的消息函数接收触控点参数,并根据算法对用户操作手势进行判断,实现波形水平缩放及滑动、垂直缩放及平移的功能,为用户提供了更加友好、便捷的操作方式,并提高了产品的亮点。
附图说明
图1为用于数字示波器触摸屏的多点触控方法的原理框图。
具体实施方式
下面结合附图对本发明进行具体的说明:
结合图1,一种用于数字示波器触摸屏的多点触控方法,数字示波器通过USB接口外接有触摸屏,触摸屏为电容触摸屏,数字示波器采用Windows7操作系统,可自动识别触摸屏,免驱动安装,若系统不能识别触摸屏,可安装触摸屏厂家提供的驱动程序。
触摸屏的多点触控方法包括:
步骤1:初始化,通过系统函数GetSystemMetrics(SM_DIGITIZER)检测触摸屏是否接入示波器,函数GetSystemMetrics(SM_DIGITIZER)为系统自带的函数,若电容触摸屏接入示波器,则通过系统函数GetSystemMetrics(SM_MAXIMUMTOUCHES)得到触摸屏支持的触控输入数量,函数GetSystemMetrics(SM_MAXIMUMTOUCHES)为系统自带的函数;
步骤2:功能注册,在需要响应多点触控的窗口类中,通过系统函数RegisterTouchWindow()进行触控操作注册,函数RegisterTouchWindow()为系统自带函数,得到触控操作时的WM_TOUCH消息;
步骤3:消息响应,添加WM_TOUCH消息响应函数,得到WM_TOUCH消息中传递的触控点数量及触控点数据结构信息,从触控点数据结构信息中得到当前的触摸状态,触摸状态包括按下、移动和抬起三个操作状态,当检测到TOUCHEVENTF_DOWN时,记录当前为按下状态;当检测到TOUCHEVENTF_MOVE时,记录当前为移动状态;当检测到TOUCHEVENTF_UP时,记录当前为抬起状态,并同时记录各状态的坐标值;
步骤4:判断触控点数据结构信息是否为抬起状态,若为抬起状态,则执行步骤5;否则执行步骤3;
步骤5:判断得到的触控点数量是否为1,若触控点数量为1,则为单点移动操作,执行步骤6;若触控点数量不为1,则为两点缩放操作,执行步骤7;
步骤6:单点移动,当到达抬起状态时,表示触控操作结束,判断按下状态到抬起状态过程中的X方向及Y方向移动的距离,若X方向移动的距离大于Y方向移动的距离,则为水平滑动,即改变示波器的水平延迟位置,若抬起时的X坐标大于按下时的X坐标,则向右移动,反之则向左移动;若X方向移动的距离小于Y方向移动的距离,则为垂直移动,即改变示波器的垂直偏移,若抬起时的Y坐标小于按下时的Y坐标,则向上平移,反之则向下平移;
步骤7:两点缩放,当到达抬起状态时,表示触控操作结束,分别计算两个触控点的X方向及Y方向移动的距离,分别记为X1、Y1和X2、Y2,若X1大于Y1并且X2大于Y2,则执行水平缩放,即改变示波器的时基,若第一个触控点对应的抬起时的X坐标小于其按下时的X坐标,则减小示波器的时基,执行水平放大功能,反之则增大示波器的时基,执行水平压缩功能;若X1小于Y1并且X2小于Y2,则执行垂直缩放,即改变示波器的垂直量程,若第一个触控点对应的抬起时的Y坐标小于其按下时的Y坐标,则减小示波器的垂直量程,执行垂直放大功能,反之则增大示波器的垂直量程,执行垂直压缩功能。
当然,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。
Claims (2)
1.一种用于数字示波器触摸屏的多点触控方法,其特征在于,数字示波器通过USB接口外接有触摸屏,触摸屏的多点触控方法包括:
步骤1:初始化,通过系统函数GetSystemMetrics(SM_DIGITIZER)检测触摸屏是否接入示波器,若电容触摸屏接入示波器,则通过系统函数GetSystemMetrics(SM_MAXIMUMTOUCHES)得到触摸屏支持的触控输入数量;
步骤2:功能注册,在需要响应多点触控的窗口类中,通过系统函数RegisterTouchWindow()进行触控操作注册,得到触控操作时的WM_TOUCH消息;
步骤3:消息响应,添加WM_TOUCH消息响应函数,得到WM_TOUCH消息中传递的触控点数量及触控点数据结构信息,从触控点数据结构信息中得到当前的触摸状态,触摸状态包括按下、移动和抬起三个操作状态,当检测到TOUCHEVENTF_DOWN时,记录当前为按下状态;当检测到TOUCHEVENTF_MOVE时,记录当前为移动状态;当检测到TOUCHEVENTF_UP时,记录当前为抬起状态,并同时记录各状态的坐标值;
步骤4:判断触控点数据结构信息是否为抬起状态,若为抬起状态,则执行步骤5;否则执行步骤3;
步骤5:判断得到的触控点数量是否为1,若触控点数量为1,则为单点移动操作,执行步骤6;若触控点数量不为1,则为两点缩放操作,执行步骤7;
步骤6:单点移动,判断按下状态到抬起状态过程中的X方向及Y方向移动的距离,若X方向移动的距离大于Y方向移动的距离,则为水平滑动,若抬起时的X坐标大于按下时的X坐标,则向右移动,反之则向左移动;若X方向移动的距离小于Y方向移动的距离,则为垂直移动,若抬起时的Y坐标小于按下时的Y坐标,则向上平移,反之则向下平移;
步骤7:两点缩放,分别计算两个触控点的X方向及Y方向移动的距离,分别记为X1、Y1和X2、Y2,若X1大于Y1并且X2大于Y2,则执行水平缩放,即改变示波器的时基,若第一个触控点对应的抬起时的X坐标小于其按下时的X坐标,则减小示波器的时基,执行水平放大功能,反之则增大示波器的时基,执行水平压缩功能;若X1小于Y1并且X2小于Y2,则执行垂直缩放,即改变示波器的垂直量程,若第一个触控点对应的抬起时的Y坐标小于其按下时的Y坐标,则减小示波器的垂直量程,执行垂直放大功能,反之则增大示波器的垂直量程,执行垂直压缩功能。
2.根据权利要求1所述的一种用于数字示波器触摸屏的多点触控方法,其特征在于,所述触摸屏为电容触摸屏。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610670522.1A CN106249976A (zh) | 2016-08-15 | 2016-08-15 | 一种用于数字示波器触摸屏的多点触控方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610670522.1A CN106249976A (zh) | 2016-08-15 | 2016-08-15 | 一种用于数字示波器触摸屏的多点触控方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106249976A true CN106249976A (zh) | 2016-12-21 |
Family
ID=57591994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610670522.1A Pending CN106249976A (zh) | 2016-08-15 | 2016-08-15 | 一种用于数字示波器触摸屏的多点触控方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106249976A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688432A (zh) * | 2017-09-04 | 2018-02-13 | 中国电子科技集团公司第四十研究所 | 一种基于触控技术的电子测量仪器人机交互系统架构 |
CN108088435A (zh) * | 2017-10-20 | 2018-05-29 | 沈阳美行科技有限公司 | 一种识别触控的导航方法及装置 |
CN108444073A (zh) * | 2018-02-23 | 2018-08-24 | 海信(山东)空调有限公司 | 空调控制界面的操作反馈方法、控制器及空调 |
CN108563467A (zh) * | 2018-03-23 | 2018-09-21 | 北京轩宇信息技术有限公司 | 一种符合安全保密的带触摸屏pad及实现方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102096488A (zh) * | 2009-12-09 | 2011-06-15 | 腾讯科技(深圳)有限公司 | 一种基于触摸屏的多触点输入方法及装置 |
CN102707114A (zh) * | 2012-06-13 | 2012-10-03 | 郑州麦科信电子技术有限公司 | 数字示波器波形操控方法 |
CN103592486A (zh) * | 2012-08-17 | 2014-02-19 | 固纬电子实业股份有限公司 | 触控式示波器及其波形显示触控操作方法 |
CN103941064A (zh) * | 2014-03-26 | 2014-07-23 | 深圳麦科信仪器有限公司 | 触控示波器波形显示缩放或延迟窗口的调出方法及装置 |
CN104569529A (zh) * | 2013-10-20 | 2015-04-29 | 西安群丰电子信息科技有限公司 | 数字示波信号显示装置 |
-
2016
- 2016-08-15 CN CN201610670522.1A patent/CN106249976A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102096488A (zh) * | 2009-12-09 | 2011-06-15 | 腾讯科技(深圳)有限公司 | 一种基于触摸屏的多触点输入方法及装置 |
CN102707114A (zh) * | 2012-06-13 | 2012-10-03 | 郑州麦科信电子技术有限公司 | 数字示波器波形操控方法 |
CN103592486A (zh) * | 2012-08-17 | 2014-02-19 | 固纬电子实业股份有限公司 | 触控式示波器及其波形显示触控操作方法 |
CN104569529A (zh) * | 2013-10-20 | 2015-04-29 | 西安群丰电子信息科技有限公司 | 数字示波信号显示装置 |
CN103941064A (zh) * | 2014-03-26 | 2014-07-23 | 深圳麦科信仪器有限公司 | 触控示波器波形显示缩放或延迟窗口的调出方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688432A (zh) * | 2017-09-04 | 2018-02-13 | 中国电子科技集团公司第四十研究所 | 一种基于触控技术的电子测量仪器人机交互系统架构 |
CN108088435A (zh) * | 2017-10-20 | 2018-05-29 | 沈阳美行科技有限公司 | 一种识别触控的导航方法及装置 |
CN108444073A (zh) * | 2018-02-23 | 2018-08-24 | 海信(山东)空调有限公司 | 空调控制界面的操作反馈方法、控制器及空调 |
CN108563467A (zh) * | 2018-03-23 | 2018-09-21 | 北京轩宇信息技术有限公司 | 一种符合安全保密的带触摸屏pad及实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20080012835A1 (en) | Hover and touch detection for digitizer | |
CN104657062A (zh) | 图形编辑方法以及电子装置 | |
CN106249976A (zh) | 一种用于数字示波器触摸屏的多点触控方法 | |
TW201011605A (en) | Method capable of preventing mistakenly triggering a touch panel | |
JP2010055612A (ja) | 多点タッチセンサーシステム | |
CN103207718A (zh) | 一种互电容式触摸屏及其触摸感应方法 | |
JP2010055613A (ja) | 多点タッチセンサーシステムのオペレーション方法 | |
CN102103461A (zh) | 在笔记本电脑触控板上实现快捷键模式的方法 | |
CN103164067A (zh) | 判断触摸输入的方法及电子设备 | |
CN105022561A (zh) | 触摸屏控制装置、方法和移动终端 | |
CN101498984B (zh) | 电脑光标控制系统及控制光标移动的方法 | |
CN101458576B (zh) | 输入装置和方法以及笔记本电脑 | |
CN101419533A (zh) | 一种触控板的自动卷动控制方法及其控制模块 | |
CN103257724B (zh) | 一种非接触式鼠标及其操作方法 | |
CN103576997A (zh) | 表面电容式触控面板的触控识别方法 | |
JP6255321B2 (ja) | 情報処理装置とその指先操作識別方法並びにプログラム | |
CN102681711B (zh) | 触控面板及其多点检测方法 | |
CN104375697A (zh) | 一种移动设备 | |
CN104375698A (zh) | 一种触控设备 | |
CN101593052A (zh) | 一种笔记本电脑 | |
TWI502456B (zh) | 互電容式觸控螢幕及其觸控感應方法 | |
US20130141374A1 (en) | Touchpad operating as a hybrid tablet | |
CN104375639A (zh) | 一种空中感应设备 | |
CN204270260U (zh) | 一种移动设备 | |
CN205193752U (zh) | 一种触摸终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161221 |