none
WM_TOUCHの優先順位 RRS feed

  • 質問

  • WM_TOUCHで複数のポイントを扱う時には、初めに触ったポイントが優先(TOUCHEVENTF_PRIMARY)に設定されますが
    コレを状況に合わせて変更させる事はできないでしょうか?
    例えば同時に2点触れいている場合に動いた方を優先にして、マウスイベントを発生させる等を行いたいのです。
    どなたかわかる方がいらっしゃいましたら教えてください。
    2014年3月7日 4:34

回答

  • フラグを差し替えることはできなかった(実験済み)。ということですね。

    その場合は、タッチイベントからジェネレートされたWM_LBUTTONDOWN/UP/MOVEを
    判別して無視し、その後「特定の判定」の結果でWM_LBUTTONDOWN/UP/MOVEを
    自身にポストする必要があるかもしれません(ないかもしれませんが)。
    いずれにしろ、対象としている処理に対して、邪魔なメッセージは無視しなければなりません。

    さて、その判定方法ですが、

    http://msdn.microsoft.com/ja-jp/library/windows/desktop/dd693088(v=vs.85).aspx

    に、GetMessageExtraInfo を使用した例が掲載されています。

    • 回答の候補に設定 星 睦美 2014年3月10日 6:21
    • 回答としてマーク JoriChara 2014年3月11日 8:44
    2014年3月7日 6:19

すべての返信

  • フラグを差し替えることはできなかった(実験済み)。ということですね。

    その場合は、タッチイベントからジェネレートされたWM_LBUTTONDOWN/UP/MOVEを
    判別して無視し、その後「特定の判定」の結果でWM_LBUTTONDOWN/UP/MOVEを
    自身にポストする必要があるかもしれません(ないかもしれませんが)。
    いずれにしろ、対象としている処理に対して、邪魔なメッセージは無視しなければなりません。

    さて、その判定方法ですが、

    http://msdn.microsoft.com/ja-jp/library/windows/desktop/dd693088(v=vs.85).aspx

    に、GetMessageExtraInfo を使用した例が掲載されています。

    • 回答の候補に設定 星 睦美 2014年3月10日 6:21
    • 回答としてマーク JoriChara 2014年3月11日 8:44
    2014年3月7日 6:19
  • 返信ありがとうございます。

    やはり優先ポイントの設定を変更することはできないのですね・・・

    残念です。

    2014年3月11日 8:47