0

マウスなしで通常の WPF コントロールを操作する UI を作成しようとしています。複数のカーソルをサポートしたいので、通常の入力シミュレーション ( などSendInput) を使用しても機能しません。また、メッセージをインターレースSendInputしてマウスカーソルをシミュレートしようとしましたが、どちらも機能しませんでした (マウス入力は 1 つしかありませんでした)。Windows を使いたくないという制約もありますMultiPointMouseEnterEventMouseLeaveEventMouseMoveMouseDownEventおよびMouseUpEvent. _ しかし、を除いてMouseDownEvent、どれも機能していないようです。を送信する方法の例を次に示しますMouseEnterEvent

System.Windows.Input.MouseEventArgs e =
    new System.Windows.Input.MouseEventArgs(System.Windows.Input.Mouse.PrimaryDevice, DateTime.Now.Millisecond);
e.RoutedEvent = System.Windows.Input.Mouse.MouseEnterEvent;
elementUnderCursor.RaiseEvent(e);

はどこelementUnderCursorですかUIElement

4

2 に答える 2

0

更新 dsf は、kinect を使用して複数のマウス プロジェクトに取り組んでいる仮想マウス デバイスをシミュレートするために機能します。複数のマウス ドライバを一晩で構築することはできないことに注意してください。また、Windows ddk をダウンロードして、マウス デバイスをシミュレートします。シナリオに合わせて testgenerichid.wsf スクリプトを変更する必要がありますが、可能です。

于 2011-10-20T13:19:22.060 に答える
0

マルチモーズ kinect アプリでも同じことを望んでいたと思いますが、エミュレートされたマウス ドライバーがある場合は、USB マウスや ps/ 2 マウスドライバー。たとえば、mousedown および up イベントを送信して、マウス #1、#2 のマウス クリックをシミュレートします。また、マウス #1、#2 のマウス位置を更新します。上記の理由は、上記のプログラムと同様のプログラムをサービスとしてバックグラウンドで実行することにより、任意のアプリケーションで動作するようにしたかったからです。

于 2011-09-15T15:15:03.737 に答える