2013-02-16 116 views
2

我正在開發針對Windows 8,桌面模式的c#touch應用程序,而且我無法找到最佳方法來執行此操作。我的問題是:我應該使用現有的Windows 7 Touch API c#還是可以使用新的多點觸控c#API來開發Windows 8桌面應用程序?Windows 8桌面多點觸控API

我知道Windows 8支持win7 touch api,只需要一些見解和反饋,如果仍然是最好的唯一方法。

有沒有人有過這個問題的經驗?

編輯:我發現這篇文章:http://software.intel.com/en-us/articles/touch-gestures,基本上UIElement暴露的方法,使觸摸操縱。也許這是要走的路。有什麼想法嗎?

謝謝。

回答

2

Windows 8的API已經根據WM_POINTER消息的新API看到http://msdn.microsoft.com/en-us/library/hh454916(v=vs.85).aspx

Windows 7的API也有一些缺點,見http://the-witness.net/news/2012/10/wm_touch-is-totally-bananas/

+0

感謝Maf,但我認爲指針API將與C++代碼一起使用,並且我無法找到與c#類似的API。 – Ivo 2013-02-16 20:49:04

+1

然後,WPF 4 Multitouch API即將推出。微軟剛剛在Windows 8 Metro應用程序和C++低級別事件中引入了新的多點觸控API。 – Maf 2013-02-17 11:44:13

0

WM_TOUCHxxx消息不容易出現這樣的問題:

http://social.msdn.microsoft.com/Forums/en-US/ce6d630a-b345-46ac-88ef-773704986d62/touch-responsiveness-issue-how-to-resolve-jagged-nonsmooth-lines?forum=winappswithcsharp

WM_TOUCHxxx和WM_POINTERxxx消息都會出現這個問題:

https://connect.microsoft.com/VisualStudio/feedback/details/903760/wpf-touch-services-are-badly-broken

如果你的C#桌面應用程序使用WPF,您唯一可行的辦法是實現自己的TOUCHDEVICE能解決這些根本問題,因爲它似乎微軟已經決定WPF觸摸不再重要。