WPF触控程序的开发(一)——有用的资源
迟来的一篇博文,每次都要撞到月末,这个月实在太忙了,除了在公司上班,还接了个单子,用wpf做一个触屏软件,类似iphone的相册功能。先说搭建开发环境吧,我是不可能去买个平板来的,再说基于win7的程序能不能跑在平板上面还不一定,这是我首要解决的问题,使用第三方工具搭建触屏开发测试环境。有人说2012已经自带触屏程序的开发环境了,目前我还是用的vs2010,具体搭建方法可以参考:
http://www.cnblogs.com/gnielee/archive/2010/08/16/multi-touch-simulator.html
一般按照这样的步骤安装就可以用了,但有时候会不起作用,所有的步骤都操作了,红点出来了,鼠标也隐藏了,点屏幕却没有任何反应,而且在画图里画可以看到不管红点移到何处,始终在画板上的一个地方画。具体解决办法在我后面的博文里有介绍,这里给个电梯吧:WPF触控程序开发(四)——MultiTouchVista_-_second_release_-_refresh_2的救赎
环境搭建好了,接下来就可以开始开发了,一些基本的事件编写可以参考:
http://msdn.microsoft.com/zh-cn/magazine/ff898416.aspx 这是4年前的文章了,我看到的时候还在惊讶,4年前的技术,我到现在才开始接触...里面几个例子还是很不错的,值得学习。不过我们自己写的话,可以着重在ManipulationDelta事件里处理触屏变化,而不用重写。
另外介绍一个博主的博客,也介绍了触屏开发的一些经验:http://www.cnblogs.com/gnielee/archive/2010/08/17/multi-touch-raw-touch.html
关于点击判断手指有没有移动,可以在touchdown的时候记录device的触碰点,等touchup的时候获取新的点,对比两者是否有位移就行。
另外,wpf里的scrollviewer已经支持触屏移动了,不用写一行代码,具体可以参考:http://blogs.msdn.com/b/linanw/archive/2010/05/02/windows-1-wpf-4.aspx
还有是用blend的行为来控制滑动,也不用写一行代码,不过控制得不够灵活,可以说没法控制,大家也可以参考下:http://www.pin5i.com/showtopic-wpf-multi-touch-development-efficient-development-patterns.html
这些资料只要你去搜就可以搜到,不过真正看到肚子里的才是自己的,要想做到iphone相册那样的效果还是要花点心思的,研究中...
WPF触控程序的开发(一)——有用的资源的更多相关文章
- WPF触控程序开发(二)——整理的一些问题
上一篇(WPF触控程序开发)介绍了几个比较不错的资源,比较基础.等到自己真正使用它们时,问题就来了,现把我遇到的几个问题罗列下,大家如有遇到其他问题或者有什么好的方法还望赐教. 问题1.如何获取触控点 ...
- WPF触控程序开发(四)——MultiTouchVista_-_second_release_-_refresh_2的救赎
起源 Multitouch是一款可用于Win7模拟触摸屏幕的开源软件(关于它的使用介绍),最后一次更新是在11年5月份,我是13年初开始用的,当时开发了一款类似IPhone相册的图片展示触控程序,就是 ...
- WPF触控程序开发(三)——类似IPhone相册的反弹效果
用过IPhone的都知道,IPhone相册里,当图片放大到一定程度后,手指一放,会自动缩回,移动图片超出边框后手指一放,图片也会自动缩回,整个过程非常和谐.自然.精确,那么WPF能否做到呢,答案是肯定 ...
- Android开发实例之多点触控程序
智能终端设备的多点触控操作为我们带来了种种炫酷体验,这也使得很多Android开发者都对多点触控程序的开发感兴趣.实际上多点触控程序的实现并不是那么遥不可及,而是比较容易.本文就主要通过一个实例具体讲 ...
- WPF触控方面的技术点
一.基本的触控事件(原始触控) 二.复杂触控事件(操作)
- WPF之坑——surface触控失灵之谜
本次又遇到了WPF编写触控程序的一个问题,虽然已解决,但原因确搞不太明白,希望有大神看到这篇文章帮我解答. 在项目中实现了自己定义的icommandsource,因为需要对触控有特殊需求,控件对鼠标与 ...
- MSDN 杂志:UI 前沿技术 - WPF 中的多点触控操作事件
原文 MSDN 杂志:UI 前沿技术 - WPF 中的多点触控操作事件 UI 前沿技术 WPF 中的多点触控操作事件 Charles Petzold 下载代码示例 就在过去几年,多点触控还只是科幻电 ...
- [WPF]为旧版本的应用添加触控支持
之前做WPF开发时曾经遇到这样一个需求:为一个基于 .NET Framework 3.5开发的老旧WPF程序添加触控支持,以便于大屏触控展示. 接手之后发现这是一个大坑. 项目最初的时候完全没考虑过软 ...
- 【WPF学习】第十八章 多点触控输入
多点触控(multi-touch)是通过触摸屏幕与应用程序进行交互的一种方式.多点触控输入和更传统的基于笔(pen-based)的输入的区别是多点触控识别手势(gesture)——用户可移动多根手指以 ...
随机推荐
- python Fuction 方法的调用
def display():#无参数 print("No") return # display() def callfun():#调用 print("2") d ...
- 关于rabbitmq的消息路由的同步问题
http://www.cnblogs.com/me-sa/archive/2012/11/12/rabbitmq_ram_or_disk_node.html我是看了上面的博客明白了一些原理的,我之前一 ...
- ubuntu server 16.04安装GPU服务器
1 Ubuntu16.04 系统安装过程中,需要勾选openssh-server 方便远程连接 2 必须安装gcc 与g++ 3 安装显卡驱动 NVIDIA-Linux-x86_64-367.57.r ...
- ptxas fatal : Unresolved extern function Error 255
This question already has an answer here: External calls are not supported - CUDA 1 answer I am tryi ...
- uvm_reg_predictor——寄存器模型(十一)
保存寄存器的值 观察DUT寄存器值的变化. //---------------------------------------------------------------------------- ...
- 新手第一天学习 C#语言(进制互换)
说起来我们对一些陌生或者未知的东西有一些恐惧感,但是又有一些期待,虽然我不确定自己能不能学会这门语言,但是我会尽自己最大的努力学. 我们第一天学的的内容呢,对大多数的人都知道,计算机的语言是二进制,但 ...
- jspscriptlet标签
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding= ...
- BZOJ 4423: [AMPPZ2013]Bytehattan 并查集+平面图转对偶图
4423: [AMPPZ2013]Bytehattan Time Limit: 3 Sec Memory Limit: 128 MB Submit: 277 Solved: 183 [Submit ...
- linux概念和体系
1. Linux开机启动 2. Linux文件管理 3. Linux的架构 4. Linux命令行与命令 5. Linux文件管理相关命令 6. Linux文本流 7. Linux进程基础 8. Li ...
- python基础教程总结7——异常
1.Python异常类 Python是面向对象语言,所以程序抛出的异常也是类.常见的Python异常有: 异常 描述 NameError 尝试访问一个没有申明的变量 ZeroDivisionError ...