WEB开发网
开发学院手机开发Windows Mobile 开发 Windows Mobile 6.5 Gesture API 介绍 阅读

Windows Mobile 6.5 Gesture API 介绍

 2010-06-01 22:53:00 来源:WEB开发网   
核心提示:physicsAnimation对象,然后设置其ExtentControl和ViewportControl,Windows Mobile 6.5 Gesture API 介绍(5),什么是ExtentControl呢,他就是你想要在窗体上滚动的那块内容;而ViewportControl,同样也是从Gesture中获得;
physicsAnimation对象,然后设置其ExtentControl和ViewportControl。什么是ExtentControl呢,他就是你想要在窗体上滚动的那块内容;而ViewportControl,就是用户当前可以看到的那一部分。如下图所示:

Windows Mobile 6.5 Gesture API 2

我们始终只能看到屏幕中间显示的地图的一小块,但是整个图片控件其实非常大,已经超出了窗体的范围。在这里我们需要注意的是,ViewportControl他的实际大小通常比ExtentControl要小,但是它是ExtentControl的父级对象。即 ExtentControl在ViewportControl内部。

当我们需要它进行滚动的时候,我们只需要简单的设置physicsAnimation对象的运动角度(确切说,是弧度),力度,然后调用其Start方法就可以。而要停止某一个运动,只需要调用其Stop方法,正在滚动的动作就会停止。

private void gestureRecognizer1_Scroll(object sender, GestureScrollEventArgs e)

{

label1.Text = e.Kind.ToString() + ": " + e.State + ", (" + e.X + ", " + e.Y + "), d=" + e.ScrollDirection + ", a=" + e.Angle + ", v=" + e.Velocity;

this.physicsAnimation1.Stop();

this.physicsAnimation1.Angle = e.Angle;

this.physicsAnimation1.Velocity = e.Velocity;

this.physicsAnimation1.Start();

}

上面这段代码就演示了physicsAnimation组件的使用方式。这是利用的上一小节中咱们用到的Gesture API来捕获Flick动作,也就是滚动。

首先我们使用Stop方法停止当前的动画;然后设置运动的方向的弧度,这里是通过Gesture来判定运动方向;然后是力度,同样也是从Gesture中获得;最后调用Start方法,则指定的ExtentControl就在ViewportControl对象的可视区域内滚动起来。具体参见http://code.msdn.microsoft.com/gestureswm 中所提供的GestureHarness工程。

上一页  1 2 3 4 5 

Tags:Windows Mobile Gesture

编辑录入:coldstar [复制链接] [打 印]
赞助商链接