博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Windows 8.1 应用开发 – 触控操作
阅读量:6572 次
发布时间:2019-06-24

本文共 1434 字,大约阅读时间需要 4 分钟。

与WPF相同Windows 8.1应用中也具有高级触控操作(Manipulation),其中包含了三种常见的触屏手势:平移、缩放、旋转,通过以下四种事件可为控件实现各种触控操作:ManipulationStarting、ManipulationStarted、ManipulationDelta、ManipulationInertiaStarting、ManipulationCompleted。

打开Visual Studio 2013 Preview,新建Windows Store应用。在XAML代码中添加Image控件,将ManipulationMode设置为ALL(也可按需要选择不同模式),并为其添加ManipulationStarting、ManipulationDelta、ManipulationCompleted事件,以便后续实现相关手势操作内容。RenderTransform中的CompositeTransform是一个控件变形组合,可容纳多种变形属性,如平移、旋转、缩放。

  
    
      
        
      
      

接下来,编写每个事件的具体内容,如下代码:

private void image_ManipulationStarting(object sender, ManipulationStartingRoutedEventArgs e) {  e.Handled = true;}private void image_ManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e) {
  FrameworkElement element = e.OriginalSource as FrameworkElement;   element.Opacity = 0.5;   imageCT.TranslateX += e.Delta.Translation.X;  imageCT.TranslateY += e.Delta.Translation.Y;  imageCT.ScaleX *= e.Delta.Scale;  imageCT.ScaleY *= e.Delta.Scale;  imageCT.Rotation += e.Delta.Rotation;} private void image_ManipulationCompleted(object sender, ManipulationCompletedRoutedEventArgs e) {
  FrameworkElement element = e.OriginalSource as FrameworkElement;   element.Opacity = 1;}

     这些代码很好理解,当ManipulationDelta触发后,首先将控件透明度设置为0.5,然后捕捉触控操作并对TranslateX、TranslateY(平移);ScaleX、ScaleY(缩放)、Rotation(旋转)进行修改。最后ManipulationCompleted结束后将控件透明度恢复即可。按下F5键看看效果如何。

 

转载地址:http://veojo.baihongyu.com/

你可能感兴趣的文章
浅谈矩阵分解在推荐系统中的应用
查看>>
视频编解码器,bbv 缓冲区溢出和下溢
查看>>
一些小知识
查看>>
android 71 ArrayAdapter和SimpleAdapter
查看>>
android:#FFFFFFFF 颜色码解析
查看>>
POJ 2151 Check the difficulty of problems (动态规划-可能DP)
查看>>
jQuery-1.9.1源码分析系列(十) 事件系统——事件包装
查看>>
谢惠民,恽自求,易法槐,钱定边编数学分析习题课讲义习题参考解答
查看>>
禅道 Rest API 开发
查看>>
在opencv3中实现机器学习之:利用逻辑斯谛回归(logistic regression)分类
查看>>
springmvc(4)注解简单了解
查看>>
并集(union和union all的区别)、交集、差集、全连接
查看>>
Fragment与FragmentActivity通信封装
查看>>
飘逸的python - yield简明教程
查看>>
sql查询重复记录、删除重复记录方法大全
查看>>
hdu1711 Number Sequence
查看>>
js如何判断一组数字是否连续,得到一个临时数组[[3,4],[13,14,15],[17],[20],[22]];
查看>>
PHP利用memcache缓存技术提高响应速度
查看>>
python 多线程笔记(2)-- 锁
查看>>
EXT--表单AJax提交后台,返回前端数据格式的转换
查看>>