XREA.COM Logo XREA.COM Ad

管理人の雑記

80管理人 ★:2007/10/19(金) 00:04:26
新マウスジェスチャスクリプトβ4くらい
http://lukewarm.s101.xrea.com/myscripts/MouseGesture2.zip
更に改良。

MG_Abort()という関数で、即座にタイムアウトを発生させられるようにした。
「RB_D」にこれを割り当てると、右ボタンで下向きにドラッグをすることで、
即座にジェスチャをキャンセルしてドラッグ&ドロップが可能になる。
大変便利だが、今までタイムアウトを待っていたので変な感じだ。

上記の実験中に、MouseMoveでカーソル位置がずれることに気付いたので、
BlockInputコマンドで防止することに。

WM_NCHITTESTメッセージを使って、ターゲットウィンドウ上のどの部分で開始したかを
取得する関数MG_HitTest()を作成。
タイトルバーや「閉じる」ボタンなど、クリックした場所に応じた動作を割り当てられるようになった。

また、ボタン操作をエミュレートする部分をMG_Send()という関数にした。
処理自体は、ボタン定義モジュール上のサブルーチンに丸投げ。
操作エミュレート処理が複雑になっているボタン定義モジュールが作られても、
他のボタンと同じ要領で扱えるようになるはず。

特定の操作の後だけダブルジェスチャの受付を行うためのMG_Wait()関数も作った。
101KB
名前: E-mail:
ファイル:
0ch BBS 2005-10-08