- - PR -
C# ドラッグ&ドロップ中か否か取得
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-02-10 20:55
現在ドラッグ&ドロップ中か否かを取得しようと思っていますが方法がわかりません。
範囲が自分だけならば変数なり何なりで行えるんですがグローバルフックとともに使っているのであらゆるウィンドウ下でのドラッグ&ドロップ状態を取得したいわけです。 API等で IsInDragMode 見たいなのがあるといいんですが、ご存じないでしょうか? _________________ 有末 清華 crazy(){for;;{you();}} - プログラマの覚書 | ||||||||
|
投稿日時: 2007-02-11 10:05
こんにちは。
WM_LBUTTONDOWN…WM_MOVE…WM_LBUTTONUPメッセージが飛んできたからといって、 ドラッグ&ドロップしているとも限らず… 全てのアプリケーションがOLEドラッグ&ドロップで実装しているわけでもなく… ESCキーや右ボタンでドラッグが中断するかしないかは、アプリケーションによって違うし… 「そんなこと無理」というほうに一票です。 | ||||||||
|
投稿日時: 2007-02-11 10:30
無理ですか(汗
マウスジェスチャー作ってて、右クリックしてドラッグ範囲を超えたときにジェスチャーを開始するようにしてるんですが、右クリックでアイテムをドラッグするときも同じ動きになりますよね?なんとか見分けたいなと・・・ _________________ 有末 清華 crazy(){for;;{you();}} - プログラマの覚書 | ||||||||
|
投稿日時: 2007-02-13 14:29
無理ですね。
少なくとも「右ボタンダウン+移動」でジェスチャーの開始とするのは。 エクスプローラでファイルを右ドラッグしてみてください。 これをブロックしてしまったらどうなるでしょう? 両手が使える人ならいいですが、何かの理由で片手しか使えない場合は? さて、ドラッグ中かどうかの判断ですが、基本的にはマウスダウン状態+マウスキャプチャー状態となります。 ただ、この状態だからといってすべてがドラッグ状態にはなりません。 ボタン(普通のボタン。メッセージボックスのOKボタンとかでよい)で、やってみるとわかります。 少なくともこの2つはクリアできないと、グローバルフックでのジェスチャー開始を何らかのアクションでというのは難しいでしょう。 | ||||||||
|
投稿日時: 2007-02-13 18:30
ジェスチャー→ドラッグ なら、できるよ。→StrokeIt など
_________________ | ||||||||
|
投稿日時: 2007-02-13 19:10
それでよければ...w ドラッグ中の動きをジェスチャーの一部としてしまうのはありでしょうねw それで望む機能が得られるのか?はわかりませんけど。 #おいらなら、何もしてない時に一定の動作をすることでジェスチャーとしますがw | ||||||||
|
投稿日時: 2007-02-13 19:53
まあ、ラウンチャーということなので、ドラッグの方が主体だと思うけど _________________ | ||||||||
|
投稿日時: 2007-02-14 01:47
ドラッグの取得がしたいってのはドラッグしてるときまで線(ジェスチャーのヘルパー)表示したら汚いなぁっていうのと、ドラッグ中なのにジェスチャーを認識しちゃまずいなって思ったためです。NeuralNetworkなんでフツーに認識しちゃうorz
>>ジェスチャー→ドラッグ なら、できるよ。→StrokeIt など 結構すごいのあったんですね知らなかった。でもこれも八方行ジェスチャーみたい。どうやって丸とか認識してんだろう? >>#おいらなら、何もしてない時に一定の動作をすることでジェスチャーとしますがw 具体的にどんな意味でしょうか?ちょっと参考になりそうな気がするんで教えていただけないでしょうか? ぶっちゃけジェスチャーだから使いやすけりゃいいわけで(笑。右クリでジェスチャー開始ってのがなんか一般みたいでそうしてんですが、またこれイロイロと問題でてます(苦笑 _________________ 有末 清華 crazy(){for;;{you();}} - プログラマの覚書 |