Mouse操作:

preview mouse down, StylusDevice:null

mouse down,StylusDevice:null

preview mouse up, StylusDevice:null

mouse up,StylusDevice:null

Stylus操作:

preview StylusDown , StylusDevice:2

StylusDown, StylusDevice:2

preview mouse down, StylusDevice:2

mouse down,StylusDevice:2

preview StylusUp, StylusDevice:2

StylusUp, StylusDevice:2

preview mouse up, StylusDevice:2

mouse up,StylusDevice:2

Touch操作:

preview StylusDown , StylusDevice:4

StylusDown, StylusDevice:4

preview TouchDown , TouchDevice:4

TouchDown , TouchDevice:4

preview mouse down, StylusDevice:4

mouse down,StylusDevice:4

preview StylusUp, StylusDevice:4

StylusUp, StylusDevice:4 preview

TouchUp , TouchDevice ID:4

TouchUp , TouchDevice:4

preview mouse up, StylusDevice:4

mouse up,StylusDevice:4

解读:

1,鼠标Mouse操作不会引发触笔事件或触摸事件。其鼠标事件参数e.StylusDevice==null。

2,触笔Stylus操作先引发触笔事件,然后引发鼠标事件。触笔事件参数e.StylusDevice.Id有整数值,与由其引发的鼠标事件参数e.StylusDevice.ID相同。

3,触摸Touch操作先引发触笔事件,然后引发触摸事件,最后引发鼠标事件。Stylus事件、Mouse事件的e.StylusDevice.ID与Touch事件的e.TouchDevice.ID相同。

4,触摸Touch不可以Capture,所以不能保证TouchUp事件被触发。但TouchUp必然伴随StylueUp。为保证TouchUp被处理,应对Touch引发Stylus进行Capture,处理相应的StylusUp事件。

5,因为4,我们处理Touch操作,除了PreviewTouchDown和TouchDown,应使用Stylus事件。

6,平板电脑手写板手触InkCanvas或自定义墨迹控件,当需要丢弃手指误触形成的墨迹时,可以对墨迹是由笔还是触摸形成的进行判断,判断依据是伴随PreviewStylusDown事件是否出现了PreviewTouchDown,两者时间间隔应很短,且e.StylusDevice.ID=e.TouchDevice.ID。

7,触摸状态,出现笔悬停,自动引发StylusUp事件

Mouse Touch Stylus的更多相关文章

  1. ExtJS笔记 Using Events

    Using Events The Components and Classes of Ext JS fire a broad range of events at various points in ...

  2. Android 4.0 事件输入(Event Input)系统

    参考:http://blog.csdn.net/myarrow/article/details/7091061 1. TouchScreen功能在Android4.0下不工作 原来在Android2. ...

  3. 各式 Web 前端開發工具整理

    程式碼編寫工具 (Coding Tools) 工作流程/建置/組合 (Workflow/Builds/Assemblers) lumbar brunch grunt lineman yeoman Ta ...

  4. puppeteer(五)chrome启动参数列表API

    List of Chromium Command Line Switches https://peter.sh/experiments/chromium-command-line-switches/ ...

  5. CEF 支持的命令行参数

    参考:https://peter.sh/experiments/chromium-command-line-switches/ List of Chromium Command Line Switch ...

  6. MotionEvent分析及ImageView缩放实现

    这个类在各种View和用户的手势操作之间的交互存在很大的自定义空间.要理解清楚这个类的一些特性和意义,对自定义的新型控件很有帮助 先翻译一下开发者文档的描述 Overview Motion event ...

  7. Kinect 开发 —— 骨骼追踪进阶(上)

    Kinect传感器核心只是发射红外线,并探测红外光反射,从而可以计算出视场范围内每一个像素的深度值.从深度数据中最先提取出来的是物体主体和形状,以及每一个像素点的游戏者索引信息.然后用这些形状信息来匹 ...

  8. What is Away3D

    做了几个基于Flash平台的3D的项目,一路走来收获颇多.Away3D作为一个开源的Flash3D引擎,在3D页游领域,无疑是当前OGRE在国内的地位. 翻译出了多年前做Away3D中国社区的时候翻译 ...

  9. Three.js制作360度全景图

    这是个基于three.js的插件,预览地址:戳这里 使用方法: 1.这个插件的用法很简单,引入如下2个js <script src="js/three.min.js"> ...

随机推荐

  1. python 文件移动

    python实现文件移动: import shutil shutil.move("original_path", "new_folder") # move fi ...

  2. Mysql 知识(3)

    1.如何登陆mysql数据库 mysql -u username -p 2.如何开启/关闭mysql服务 service mysql start/stop 3.查看mysql的状态 service m ...

  3. Overcoming Life's Obstacles - ASC 2017 March 03-04

    <Overcoming Life's Obstacles - How a top oboist overcame a neurological disorder to play again> ...

  4. java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderL

    今天学习spring+cxf的时候遇到一个问题:在web.xml中配置了spring的上下文监听器: <listener> <listener-class>org.spring ...

  5. 两个onCreate方法?你真的了解onCreate()么?

    Activity的onCreate方法一直是我们编写一个activity最先重载的方法.细心的小伙伴在编写代码的时候回看到这样一幕: 咦,这里怎么会有两个onCreate提供给我们重载?选择困难症患者 ...

  6. 没有无线路由,如何让手机使用电脑的网络xyytit

    前言: 智能手机已经越来越普遍,但国内的无线网络的步伐还是没有跟上智能机的脚步.纵使3G,4G已经相继推出,但国内的资费价格着实有点不接地气,所以无线wifi无疑是智能机使用最多的.各大软件上.设备商 ...

  7. AndroidDriver原理初步--Android自动化测试学习历程

    章节:自动化基础篇——AndroidDriver原理初步(第六讲) 主要讲解内容及笔记: 一.AndroidDriver核心原理 对上图的解析: PC端的端口通过adb,将android版的Remot ...

  8. iOS codeview

    1.环境配置 oclint:http://oclint.org/ xcpretty:https://github.com/supermarin/xcpretty 使用Mac安装xcpretty过程可能 ...

  9. 3-QT程序运行时报错E:\SogouInput\6.7.0.0329\程序异常终止,该怎么解决?

    https://bbs.csdn.net/topics/390653779 出现这个错误的原因,使用声明的对象时,没有使用new对对象进行实例化. 包括:数组.

  10. iOS开发总结

    最近在工作中使用Objective-C开发iOS客户端程序,它一方面和Server通讯,处理网络连接,收发报文,实现业务逻辑;另一方面为UI层提供各种业务API.   下面记录用到的相关知识点,困难, ...