CN101576821B - 一种控件感应窗体摇动的实现方法 - Google Patents
一种控件感应窗体摇动的实现方法 Download PDFInfo
- Publication number
- CN101576821B CN101576821B CN 200910039850 CN200910039850A CN101576821B CN 101576821 B CN101576821 B CN 101576821B CN 200910039850 CN200910039850 CN 200910039850 CN 200910039850 A CN200910039850 A CN 200910039850A CN 101576821 B CN101576821 B CN 101576821B
- Authority
- CN
- China
- Prior art keywords
- forms
- quadrant
- numbering
- shaking
- user
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种控件感应窗体摇动的实现方法,包括以下步骤:(1)以当前窗体位置左上角坐标为原点建立一个具有偏角的平面方向坐标系,并为各个象限编号、设定有关参数;(2)控件的消息处理模块接收窗体移动的消息,位置计算模块计算出窗体移动后所处的象限,记录对应的编号;位置计算模块以移动后的窗体位置的左上角坐标为原点,重新建立坐标系;(3)重复步骤(2),当用户摇动窗体时,每次移动后记录的象限编号形成一组序列,通过分析序列的特征,判断用户是否在摇动窗体;若判断出用户正在摇动窗体,则发送摇动操作的消息到窗体。本发明方便地为二次开发程序员在开发时加入体感操作,从而提供更好的用户体验以及更便捷的操作方式。
Description
技术领域
本发明涉及一种软件开发设计中控件的感应技术,具体是指一种控件感应窗体摇动的实现方法。
背景技术
目前,触摸屏作为一种新型的交互显示设备,其应用范围越来越广泛,大面积触摸屏设备被大量的应用在电子沙盘和会议讨论中。因此在为触摸屏设备开发应用软件时,体感元素是软件开发的重要一环,多样化的操作方式让用户能够更深入感受触摸屏带来的操作效果,为用户带来良好的操作体验。
对于触摸屏设备来说,在软件开发时一般按照普通PC(个人电脑)软件的开发方式进行开发,之后直接移植运行在触摸屏设备上。如此一来,就会忽略一个重要的开发因素——普通PC与触摸屏设备在软件操作方式上的差异。因此,用户在使用该软件时缺乏良好的操作体验,同时也让用户觉得使用触摸屏设备并没有为软件操作带来更大的方便。
对于开发在触摸屏设备上运行的软件的程序员来说,由于在开发时只使用普通PC软件的开发平台,开发平台并没有提供专为开发触摸屏设备软件而设的体感控件,所以开发时难以为软件加入更多的体感操作。
发明内容
本发明的目的在于克服上述现有技术的缺点和不足,提供一种控件感应窗体摇动的实现方法,其可以让二次开发程序员在开发触摸屏设备专用软件时方便地加入该体感操作,为用户更好的感受触摸屏带来的良好操作效果。
本发明的目的通过下述技术方案实现:本控件感应窗体摇动的实现方法,包括以下步骤:
(1)初始化设置:
以当前窗体位置左上角坐标为原点建立一个具有偏角的平面方向坐标系,并为各个象限编号,建立各个象限与编号之间的映射关系;
窗体上的控件提供参数设定接口让二次开发程序员传入用于设定判断窗体摇动操作的敏感度的有关参数;所述有关参数包括:窗体摇动幅度、摇动次数下限和单位时间;所述敏感度定义为单位时间内用户摇动窗体移动距离达到窗体摇动幅度的次数与摇动次数下限之差,若该差值大于等于0且象限编号形成的序列满足规律,可认为用户正在对窗体进行摇动操作;
(2)记录位置信息:
控件的消息处理模块接收窗体移动的消息,根据窗体移动后所处位置的左上角坐标,控件的位置计算模块计算出窗体移动后所处的象限,记录象限所对应的编号;位置计算模块以移动后的窗体位置的左上角坐标为原点,重新建立具有偏角的平面方向坐标系;启动移动距离计数器累加移动距离:每当窗体移动距离达到预先设定的窗体摇动幅度时,移动距离计数器将会调用位置计算模块,位置计算模块会根据前一次记录下的窗体位置的左上角坐标与当前窗体位置的左上角坐标计算出窗体向哪个象限移动,并记录该象限编号,计算完毕后,移动距离计数器复位,位置计算模块记录下当前窗体位置的左上角坐标并将其作为坐标原点,等待接收下一次窗体移动消息;启动摇动时间计时器计算时间:当达到预先设定的单位时间时,摇动时间计时器将会调用序列分析模块对记录下的象限编号序列进行分析;
(3)判断摇动操作:
重复步骤(2),当用户左右或上下摇动窗体时,每次移动后记录的象限编号会形成一组序列,控件的序列分析模块通过分析序列的特征,判断用户是否在摇动窗体以及摇动窗体的方向:序列分析模块把相邻重复的序列项删除,之后扫描序列判断是否反复不间断出现代表左右方向象限的编号或代表上下方向象限的编号组成的序列,若出现次数少于设定的摇动次数下限,则认为用户没有进行窗体摇动操作,则复位控件;若出现次数等于或超过设定的摇动次数下限,则认为用户在进行窗体摇动操作;认为用户在进行窗体摇动操作时,若序列仅由表示左右方向象限的编号组成,则判断用户正在进行左右方向的摇动,若序列仅由表示上下方向象限的编号组成,则判断用户正在进行上下方向的摇动;若判断出用户正在进行摇动窗体的操作,则控件的消息处理模块把摇动窗体的方向作为参数,发送摇动操作的消息到窗体,窗体收到消息后根据二次开发程序员的需要调用指定程序功能;若判断出用户没有进行窗体摇动操作,则复位控件。
为更好的实现本发明,所述具有偏角的平面方向坐标系是指具有45度偏角的平面方向坐标系。
与现有技术相比,本发明具有以下有益效果:
本发明通过给窗体所在位置建立坐标系来确定窗体摇动的方向,可以方便地为二次开发程序员在开发触摸屏设备专用软件时加入该体感操作,从而提供更好的用户体验以及更便捷的操作方式。
附图说明
图1是本发明实施例的具有45度偏角的平面方向坐标系示意图;
图2是本发明一种控件感应窗体摇动的实现方法的流程示意图。
具体实施方式
下面结合实施例及附图,对本发明作进一步地详细说明,但本发明的实施方式不限于此。
本实施例的控件由3大模块组成,分别为消息处理模块、位置计算模块、序列分析模块;其中消息处理模块用于检查初始化设置和与窗体进行通信;位置计算模块用于记录窗体的坐标信息、计算窗体的移动方向和记录窗体移动后所处的象限编号;序列分析模块用于分析序列的特征,判断用户是否在摇动窗体以及摇动窗体的方向。
本实施例还通过移动距离计数器和摇动时间计时器实现的。
本实施例的具体过程如下:
如图1所示,以当前窗体位置左上角坐标为原点建立一个具有45度偏角的平面方向坐标系,并为各个象限编号,其中左右上下方向的编号依次为1、3、2、4,建立各个象限与编号之间的映射关系;
如图2所示,首先,消息处理模块初始化时会检查二次开发程序员是否已经调用控件所提供的参数设定接口设置完成判断窗体摇动操作的敏感度的相关参数,参数包括窗体摇动幅度(单位为像素)、摇动次数下限(单位为次数)、单位时间(单位为毫秒)。根据这3个参数,敏感度可定义为单位时间内用户摇动窗体移动距离达到窗体摇动幅度的次数与摇动次数下限之差,若该差值大于等于0且象限编号形成的序列满足规律,可认为用户正在对窗体进行摇动操作。若相关参数未设定,则发出设置失败消息通知窗体。
当用户移动窗体时,控件的消息处理模块将会接收到窗体移动消息。在消息处理模块初次接收到窗体移动消息时,位置计算模块会记录下当前窗体位置的左上角坐标并将其作为坐标原点,启动摇动时间计时器以及移动距离计数器。
之后,当控件的消息处理模块再次接收到窗体移动消息时,移动距离计数器会累加移动距离。每当移动距离达到设定的窗体摇动幅度时,移动距离计数器将会调用位置计算模块。位置计算模块会根据前一次记录下的窗体位置的左上角坐标与当前窗体位置的左上角坐标计算出窗体向哪个象限移动,并记录该象限编号。计算完毕后,移动距离计数器复位,位置计算模块记录下当前窗体位置的左上角坐标并将其作为坐标原点,等待接收下一次窗体移动消息。
当摇动时间计时器达到设定的单位时间时,将调用序列分析模块对记录下的象限编号序列进行分析。
对象限编号序列进行分析的过程具体如下:首先把相邻重复的序列项删除,之后扫描序列判断是否反复不间断出现只由编号1和3(131313……)或只由编号2和4(242424……)组成的序列,若出现次数少于设定的摇动次数下限(即差值小于0),则认为用户没有进行窗体摇动操作,则复位控件;若出现次数等于或超过设定的摇动次数下限(即差值大于等于0),则认为用户正在进行窗体摇动操作。当认为用户在进行窗体摇动操作时,若序列仅由编号1和3组成,则判断用户正在进行左右方向的摇动,若序列仅由编号2和4组成,则判断用户正在进行上下方向的摇动。
一旦认为用户正在进行窗体摇动操作,则消息处理模块会以摇动方向作参数发出摇动操作的消息通知窗体。窗体收到消息后就会根据二次开发程序员的需要调用指定程序功能。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (2)
1.一种控件感应窗体摇动的实现方法,其特征在于,包括以下步骤:
(1)初始化设置:
以当前窗体位置左上角坐标为原点建立一个具有偏角的平面方向坐标系,并为各个象限编号,建立各个象限与编号之间的映射关系;
窗体上的控件提供参数设定接口让二次开发程序员传入用于设定判断窗体摇动操作的敏感度的有关参数;所述有关参数包括:窗体摇动幅度、摇动次数下限和单位时间;所述敏感度定义为单位时间内用户摇动窗体移动距离达到窗体摇动幅度的次数与摇动次数下限之差,若该差值大于等于0且象限编号形成的序列满足规律,可认为用户正在对窗体进行摇动操作;
(2)记录位置信息:
控件的消息处理模块接收窗体移动的消息,根据窗体移动后所处位置的左上角坐标,控件的位置计算模块计算出窗体移动后所处的象限,记录象限所对应的编号;位置计算模块以移动后的窗体位置的左上角坐标为原点,重新建立具有偏角的平面方向坐标系;启动移动距离计数器累加移动距离:每当窗体移动距离达到预先设定的窗体摇动幅度时,移动距离计数器将会调用位置计算模+块,位置计算模块会根据前一次记录下的窗体位置的左上角坐标与当前窗体位置的左上角坐标计算出窗体向哪个象限移动,并记录该象限编号,计算完毕后,移动距离计数器复位,位置计算模块记录下当前窗体位置的左上角坐标并将其作为坐标原点,等待接收下一次窗体移动消息;启动摇动时间计时器计算时间:当达到预先设定的单位时间时,摇动时间计时器将会调用序列分析模块对记录下的象限编号序列进行分析;
(3)判断摇动操作:
重复步骤(2),当用户左右或上下摇动窗体时,每次移动后记录的象限编号会形成一组序列,控件的序列分析模块通过分析序列的特征,判断用户是否在摇动窗体以及摇动窗体的方向:序列分析模块把相邻重复的序列项删除,之后扫描序列判断是否反复不间断出现代表左右方向象限的编号或代表上下方向象限的编号组成的序列,若出现次数少于设定的摇动次数下限,则认为用户没有进行窗体摇动操作,则复位控件;若出现次数等于或超过设定的摇动次数下限,则认为用户在进行窗体摇动操作;认为用户在进行窗体摇动操作时,若序列仅由表示左右方向象限的编号组成,则判断用户正在进行左右方向的摇动,若序列仅由表示上下方向象限的编号组成,则判断用户正在进行上下方向的摇动;若判断出用户正在进行摇动窗体的操作,则控件的消息处理模块把摇动窗体的方向作为参数,发送摇动操作的消息到窗体,窗体收到消息后根据二次开发程序员的需要调用指定程序功能;若判断出用户没有进行窗体摇动操作,则复位控件。
2.根据权利要求1所述一种控件感应窗体摇动的实现方法,其特征在于:所述具有偏角的平面方向坐标系是指具有45度偏角的平面方向坐标系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910039850 CN101576821B (zh) | 2009-05-27 | 2009-05-27 | 一种控件感应窗体摇动的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910039850 CN101576821B (zh) | 2009-05-27 | 2009-05-27 | 一种控件感应窗体摇动的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101576821A CN101576821A (zh) | 2009-11-11 |
CN101576821B true CN101576821B (zh) | 2012-06-06 |
Family
ID=41271759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910039850 Expired - Fee Related CN101576821B (zh) | 2009-05-27 | 2009-05-27 | 一种控件感应窗体摇动的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101576821B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1949154A (zh) * | 2005-10-13 | 2007-04-18 | 义隆电子股份有限公司 | 使窗口产生不同移动速率的方法 |
KR20080085596A (ko) * | 2007-03-20 | 2008-09-24 | 엘지이노텍 주식회사 | 통합 컨트롤러 모듈 |
CN101408824A (zh) * | 2008-11-18 | 2009-04-15 | 广东威创视讯科技股份有限公司 | 鼠标手势识别方法 |
-
2009
- 2009-05-27 CN CN 200910039850 patent/CN101576821B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1949154A (zh) * | 2005-10-13 | 2007-04-18 | 义隆电子股份有限公司 | 使窗口产生不同移动速率的方法 |
KR20080085596A (ko) * | 2007-03-20 | 2008-09-24 | 엘지이노텍 주식회사 | 통합 컨트롤러 모듈 |
CN101408824A (zh) * | 2008-11-18 | 2009-04-15 | 广东威创视讯科技股份有限公司 | 鼠标手势识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101576821A (zh) | 2009-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5205157B2 (ja) | 携帯型画像表示装置、その制御方法、プログラム及び情報記憶媒体 | |
CN105824610A (zh) | 一种基于终端的应用程序图标的排列方法和装置 | |
CN104081307A (zh) | 图像处理装置、图像处理方法和程序 | |
CN103870199A (zh) | 手持设备上用户操作模式的识别方法及手持设备 | |
CN103927075A (zh) | 一种界面操作的方法及终端 | |
CN104423855A (zh) | 一种信息处理方法及电子设备 | |
CN111176764B (zh) | 显示控制方法和终端设备 | |
CN110506252B (zh) | 基于图样中标志图形点坐标的转换关系定位终端屏幕 | |
CN104076988A (zh) | 一种显示方法、显示控制方法及电子设备 | |
WO2013082954A1 (zh) | 智能终端上基于陀螺仪的人机交互检测及处理方法 | |
CN104899361A (zh) | 一种远程操控方法及装置 | |
CN105426067A (zh) | 桌面图标的置换方法及装置 | |
CN103902861A (zh) | 一种状态切换方法及一种电子设备 | |
CN103914305B (zh) | 一种移动终端上自由控制应用的方法及系统 | |
CN107305432B (zh) | 一种终端及在终端上实现触觉反馈的方法、装置 | |
CN104898818A (zh) | 一种信息处理方法及电子设备 | |
CN101576821B (zh) | 一种控件感应窗体摇动的实现方法 | |
CN106201307A (zh) | 终端控制方法、终端 | |
EP3249878B1 (en) | Systems and methods for directional sensing of objects on an electronic device | |
CN109753212A (zh) | 一种文档传输方法、装置及移动终端 | |
CN107422854A (zh) | 应用于虚拟现实的动作识别方法及终端 | |
CN112416115A (zh) | 一种用于控件交互界面中进行人机交互的方法与设备 | |
CN103543824B (zh) | 手势输入系统及方法 | |
CN108021313B (zh) | 一种图片浏览方法及终端 | |
CN104917878A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 510670 Guangdong Province, Guangzhou high tech Industrial Development Zone Kezhu Road No. 233 Patentee after: Wei Chong group Limited by Share Ltd Address before: 510663 Guangzhou province high tech Industrial Development Zone, Guangdong, Cai road, No. 6, No. Patentee before: Guangdong Weichuangshixun Science and Technology Co., Ltd. |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120606 Termination date: 20180527 |