POSACC

構文
  1. UString = POSACC( ID, クライアント座標X, クライアント座標Y, [モード] )
引数
ID
Windowを識別するID (スクリーン全体の場合は 0)
座標
クライアント座標 (ID= 0 の場合はスクリーン座標)
モード
0
(デフォルト) ACC_ACCの実行、取得ができなければACC_API を実行
ACC_ACC
表示文字の取得 (アクセシビリティ経由)
ACC_API
DrawText, TextOutなどのAPIをトラップ(64bitアプリNG)
ACC_NAME
名前(アクセシビリティ経由)
ACC_VALUE
値(アクセシビリティ経由)
ACC_ROLE
役割(アクセシビリティ経由)
ACC_STATE
状態(アクセシビリティ経由)
ACC_DESCRIPTION
説明(アクセシビリティ経由)
ACC_LOCATION
X,Y,幅,高さ(アクセシビリティ経由)
ACC_BACK
ウィンドウをアクティブ化しない (他モードに付加して使用)
戻値
取得した文字(情報)

プログラム実行例

マウスカーソル下の文字情報を取得

SETHOTKEY(VK_ESC, EMPTYPARAM, "forceQuit")

WHILE TRUE
	DIM x = G_MOUSE_X
	DIM y = G_MOUSE_Y
	DIM ID = GETID(GET_FROMPOINT_WIN)
	FUKIDASI(POSACC(ID, x - STATUS(ID, ST_CLX), y - STATUS(ID, ST_CLY), ACC_BACK))
	SLEEP(0.001)
WEND

//////////////////////////////////////////////////
// 【引数】
// 
// 【戻値】
// 
//////////////////////////////////////////////////
PROCEDURE forceQuit()
	EXITEXIT
FEND
  1. script.function.GETID(4)
  2. script.function.FUKIDASI(5)
  3. script.function.POSACC(5)
  4. script.function.STATUS(5)

マウスカーソル下の文字情報を取得

SETHOTKEY(VK_ESC, EMPTYPARAM, "forceQuit")

WHILE TRUE
	DIM x = G_MOUSE_X
	DIM y = G_MOUSE_Y
	DIM ID = GETID(GET_FROMPOINT_WIN)
	DIM array[] = "ACC_ACC", "ACC_API", "ACC_NAME", "ACC_VALUE", "ACC_ROLE", "ACC_STATE", "ACC_DESCRIPTION", "ACC_LOCATION", "ACC_BACK"
	DIM str = ""
	FOR item IN array
		str = str + item + ":" + POSACC(ID, x - STATUS(ID, ST_CLX), y - STATUS(ID, ST_CLY), EVAL(item)) + "<#CR>"
	NEXT
	FUKIDASI(str)
	SLEEP(0.001)
WEND

//////////////////////////////////////////////////
// 【引数】
// 
// 【戻値】
// 
//////////////////////////////////////////////////
PROCEDURE forceQuit()
	EXITEXIT
FEND
  1. udf.forceQuit(1)
  2. script.function.GETID(6)
  3. script.function.POSACC(10)
  4. script.function.STATUS(10)
  5. script.function.FUKIDASI(12)
  6. script.function.SLEEP(13)