MOUSEORG

マウス座標を相対座標にする、 またはマウスとキー情報を直接ウィンドウへ送る。

構文
MOUSEORG( ID, [基準指定, 画面取得指定] )
引数
ID
Windowを識別するID
基準指定
0(デフォルト)
ウィンドウ位置
MORG_CLIENT(1)
クライアント領域の位置を基準にする
MORG_DIRECT(2)
指定ウィンドウ(オブジェクト)へマウス、キー情報を直接送る(第1引数はウィンドウIDでもハンドル値でも可)
画面取得指定
PEEKCOLOR()、CHKIMG()関数にて
MORG_FORE(0)(デフォルト)
フォアグランドとして可視画面(デスクトップ)からの画像を検索画面とする
MORG_BACK(2)
バックグランドとしてアプリより検索画面を取得(他画面がオーバーラップしていてもOK)
戻値
以降のMMV( )、BTN( )、PEEKCOLOR( )、CHKIMG( )関数の座標を指定ウィンドウを基準にしたものにする
基準指定にて MORG_DIRECTが指定された場合は KBD( )、MMV( )、BTN( )関数の情報は直接ウィンドウ(オブジェクト)へ送る
スクリーン座標に戻す時はゼロを指定 MOUSEORG(0)
有効範囲はスレッド単位

プログラム実行例

バックグラウンドでマッチした画像クリックする

MOUSEORG(ID, MORG_DIRECT, MORG_BACK)
CHKIMG("image.bmp", -1)
BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
  1. MOUSEORG
  2. CHKIMG
  3. BTN
解説
  1. 1行目
    MOUSEORG(ID, MORG_DIRECT, MORG_BACK)
    
    取得したい画像があるIDを指定。
  2. 2行目
    CHKIMG("image.bmp", -1)
    
    クリックしたい画像のパスを指定。
  3. 3行目
    BTN(LEFT, CLICK, G_IMG_X, G_IMG_Y)
    
    バックグラウンドでマッチした座標をクリック。フォアグラウンドでもクリックされます。

マウスカーソル下のウィンドウの左上の座標に移動する

MOUSEORG(GETID(GET_FROMPOINT_WIN))
MMV(0, 0)
  1. MOUSEORG
  2. GETID
  3. MMV

MOUSEORGで変更した基準値をスクリーン座標に戻す

MOUSEORG(0)
  1. MOUSEORG