Windows 7 マルチタッチ イベントをWPFで使う方法

Published 11 May 09 12:10 PM | hiroyuk 

Windows API Code PackではマルチタッチAPIが公開されていませんが、P/Invokeを使ってマルチタッチ イベントをWPFで使うベタな方法を、Andrwew Eichacherが彼のブログで公開しています。

  1. User32.dllをインポートして、SetPropメソッドを宣言します。
  2. ロード時にイベントハンドラー(とその中のdelegate)を追加して、WindowInteropHelper をコンストラクトして、そのオブジェクトのHandleと"MicrosoftTabletPenServiceProperty"でSetPrepを呼び出します。
  3. StylusDown, StylusMove, StylusUpイベントハンドラーとそれぞれのコールバックを追加します。
  4. すると、それぞれのコールバックの中でStylusEventArgsからStylusDevice.Idを取得することができます。これがタッチIDです。複数のタッチがあるときは、複数回コールバックが呼び出されることになります。

お試しください。

Comments

No Comments
Anonymous comments are disabled

About hiroyuk

マイクロソフト㈱エバンジェリスト。北海道大学理学部物理学科卒。リアルタイム3Dグラフィックスを専門とし、グラフィックスやシェーダに関する技術文章を執筆・講演。 DirectX SDK日本語ドキュメントの開発に携わるとともに、Windows Presentation Foundation プログラミング(オーム社)、Game Programming Gemsシリーズ、リアルタイム レンダリング第2版(ボーンデジタル)、Texturing & Modeling, A Procedural Approach などを翻訳・監修、XAMLプログラミング(ソフトバンク クリエイティブ)を執筆。趣味は薪割り。

Search

This Blog

DirectX 情報

Silverlight 情報

Windows 情報

WPF 情報

並列コンピューティング情報

著書

Syndication

Page view tracker