2016-04-21 26 views
0

私は、キーボード機能にマウス機能をマッピングする予定のアプリケーションに取り組んでいます。たとえば、ユーザーが 'L'を押すと、アプリケーションはマウスの左クリックをシミュレートします。タッチパッドのようなズーム機能を実装する

[DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)] 
public static extern void mouse_event(uint dwFlags, uint dx, uint dy, uint cButtons, uint dwExtraInfo); 

ズームインとズームアウト機能を実装したいと思います。ノートパソコンのように、タッチパッドのピンチを使って、ズームインとズームアウトができます。それをどうすれば実現できますか?

答えて

1

Windows 8+には - InjectTouchInputという素晴らしい機能があります。タッチイベントやマウスイベントに任意のパラメータを入力することができます。それはまた.net wrapperに詰め込まれています。

This questionにはピンチ用のC++サンプルコードが既に含まれているため、必要に応じて変更できます。これは、タッチスクリーンによるズームをシミュレートします。

これは片道です。他の方法は、WM_MOUSEWHEELをCTRLキー変更子で送信して、基本的にマウスホイールのズームをシミュレートするHWNDをターゲットにすることです。

+0

_これは一方的な方法です。他の方法は、基本的にマウスホイールのズームをシミュレートするHWNDをターゲットにするためにCTRLキー修飾子付きのWM_MOUSEWHEELを送信することです。私はこのアプローチを使用しました。 –

関連する問題