 | | WideStudio/MWT Class Reference
| |
クラスの型
WSDmouse
メソッド関数仕様
WSGIappMouse 関数の説明
- 書式
- WSDmouse* WSGIappMouse()
- 機能
- アプリケーションに一つ存在するマウスのグローバルインスタンスを取得します。
WSDmouse クラスへのアクセスはこの関数を介して行います。
- 処理
-
- 引数
- なし。
- 返値
- マウスインスタンス
- 注意
- 返されたインスタンスを解放してはいけません。
- サンプル
-
//マウスを取得します。
WSDmouse* mouse = WSGIappMouse();
//マウスの位置を取得します。
short x,y;
mouse->getMousePosition(&x,&y);
getMousePosition 関数の説明
- 書式
- WSCbool getMousePosition(short* x,short* y,WSCbase* inst)
- 機能
- マウスの位置を取得する関数です。
引数にインスタンスが指定されている場合は、
そのインスタンスの座標系におけるマウスの位置を取得します。
インスタンスの指定を省略した場合は、スクリーン座標で取得します。
- 処理
- inst を省略した場合は、スクリーン座標を取得します。
inst を指定した場合は、そのインスタンスの座標系で
マウスの位置を取得します。
- 引数
-
(in)short* x | X座標を格納するポインタ |
(in)short* y | Y座標を格納するポインタ |
(in)WSCbase* inst | インスタンス |
- 返値
- True = 成功、False = 失敗
- 注意
-
- サンプル
- WSGIappMouse() を参照してください。
getMouseStatus 関数の説明
- 書式
- long getMouseStatus()
- 機能
- ソフトウェア的にマウスの状態を取得する関数です。
- 処理
- ソフトウェア的にマウスの状態を取得します。
- 引数
- なし。
- 返値
- マウスの状態
WS_MOUSE_BTN1 | ボタン1(左ボタン)が押されている |
WS_MOUSE_BTN2 | ボタン2(中ボタン)が押されている |
WS_MOUSE_BTN3 | ボタン3(右ボタン)が押されている |
WS_MOUSE_BTN4 | ボタン4(ホイール上)が押されている |
WS_MOUSE_BTN5 | ボタン5(ホイール下)が押されている |
WS_MOUSE_SHIFT | シフトキーが押されている |
WS_MOUSE_MOD | モディファイアキーが押されている |
WS_MOUSE_CONTROL | コントロールキーが押されている |
WS_MOUSE_LOCK | キャプスロックキーが押されている |
- 注意
-
- サンプル
-
//マウスの状態を取得します。
long status = WSGIappMouse()->getMouseStatus();
setMousePosition 関数の説明
- 書式
- void setMousePosition(short x,short y)
- 機能
- マウスの位置を設定する関数です。
- 処理
-
- 引数
-
- 返値
- なし。
- 注意
-
- サンプル
-
//マウスを取得します。
WSDmouse* mouse = WSGIappMouse();
//マウスの位置を、100,100 に設定します。
mouse->setMousePosition(100,100);
getTargetBtn 関数の説明
- 書式
- long getTargetBtn()
- 機能
- 最後に押されたマウスのボタンを取得します。
- 処理
-
- 引数
- なし。
- 返値
- ボタン識別子
WS_MOUSE_BTN1 | ボタン1(左ボタン)が押されている |
WS_MOUSE_BTN2 | ボタン2(中ボタン)が押されている |
WS_MOUSE_BTN3 | ボタン3(右ボタン)が押されている |
WS_MOUSE_BTN4 | ボタン4(ホイール上)が押されている |
WS_MOUSE_BTN5 | ボタン5(ホイール下)が押されている |
WS_MOUSE_SHIFT | シフトキーが押されている |
- 注意
- getMouseStatus() は、同時に押されているボタンの状態を
返すのに対し、getTargetBtn() は一番最後に押されたボタンだけ
を返します。
- サンプル
-
//マウスを取得します。
WSDmouse* mouse = WSGIappMouse();
//最近に押されたマウスのボタンを取得します。
long btn = mouse->getTargetBtn();
setGlobalMouseHook 関数の説明
- 書式
- void setGlobalMouseHook(WSCbool (*)(long,WSCbase*))
- 機能
- マウスイベントをフックする関数を設定します。
マウスイベントが発生すると、
イベントの種類、イベントの発生したインスタンスを引数に
フック関数が呼び出されます。
- 処理
-
- 引数
-
WSCbool (*)(long,WSCbase*) | フック関数 |
short y | Y座標 |
- 返値
-
- 注意
- フック関数は、一つだけ指定可能です。
- サンプル
-
WSCbool global_mouse_hook_proc(long ev,WSCbase* inst){
//イベント、インスタンスに対して処理を行ないます。
...
//フック処理後、イベントを配信する場合は、True を返します。
return True;
//フック処理後、イベントを破棄する場合は、False を返します。
return False;
}
void init_ep(WSCbase* object){
//初期化イベントプロシージャ等でフック関数を設定します。
WSGIappMouse()->setGlobalMouseHook(global_mouse_hook_proc);
}
Document Release 3.98 For Use with WideStudio/MWT Release 3.98, Summer 2008 WideStudio/MWT Home | Up to Copyright(C) WideStudio/MWT Development Team, 1999-2008 | | Last modified: June 25, 2008 | |