Gestures:滑鼠(觸控筆)手勢,用動作來執行命令。
原文網址|摘要:
- 在vbAccellerator has had this whitepaper文中有說明如何在windows app中實作。主要是透過IMessageFilter來處理滑鼠訊息(mouse messages)。
- 本文則是透過from the SDF v2的Application2來實作。
- 有範例程式碼下載。
筆記:
- 要先安裝 OpenNETCF Smart Device Framework ( 2.2 Community Edition )
- 如果要套用到自己的程式碼
- 引用
using vbAccelerator.Components.Win32;
using OpenNETCF.Windows.Forms; - 修改 Main()
Application2.Run(new Form1()); // OpenNETCF.Windows.Forms.Application2 - form的建構式,InitializeComponent()之後加上
MouseGestureFilter mgf = new MouseGestureFilter();
Application2.AddMessageFilter(mgf);
mgf.MouseGesture+=new MouseGestureEventHandler(mgf_MouseGesture); - 加上 mgf_MouseGesture
private void mgf_MouseGesture(object sender, MouseGestureEventArgs args) {...}
- 引用
- 可以在DataGrid上使用,但第一個MOUSE_DOWN的事件也會被datagrid收到,CurrentCell會改變。
- 雖然可以辨識手勢,但還做不到像TouchFLO的效果。
- 若將 args.AcceptGesture = true; 則所有事件都會被吞掉,不會向下傳到其它元件。
- 修改過的source[Box.net]
另一個Gestures相關的文章:CodeProject: Optimizing Screen Area using Mouse Gestures.