CLKITEM

CLKITEM関数

アイテムをクリックする
戻値 = CLKITEM(ウィンドウのID, アイテム名, [種別, On/Off, 番号] ) 

引数
ウィンドウのID:Windowを識別するID
         (例:GETID関数で取得できる値)

アイテム名:ボタン、チェックボックス、ラジオボタンのキャプションの文字
もしくは リストボックス、コンボボックスの選択名
もしくは タブ名
もしくは メニュー項目名
もしくは ツリービュー項目、リストビュー項目
もしくは ツールバー上のボタン名
種別:
CLK_BTN ・・・ ボタン、チェックボックス、ラジオボタン
CLK_LIST ・・・ リストボックス、コンボボックス
CLK_TAB ・・・ タブコントロール
CLK_MENU ・・・ メニュー
CLK_TREEVIEW ・・・ ツリービュー (CLK_TREEVEW でも可)
CLK_LISTVIEW ・・・ リストビュー (CLK_LSTVEW でも可)
CLK_TOOLBAR ・・・ ツールバー
CLK_LINK ・・・ リンク
CLK_ACC ・・・ アクセシビリティ用インターフェースを利用したクリック
CLK_SHORT ・・・ 文字省略指定: 部分一致にて検索 (例:CLK_LIST or CLK_SHORT)
CLK_BACK ・・・ バックグランド実行: ウィンドウをアクティブ化しません
CLK_MUSMOVE ・・・ マウス移動: マウスをその場所に移動(CLK_MOUSEMOVE でも可)
CLK_RIGHTCLK・・・ 右クリック: アイテムにより右クリックの動作
CLK_LEFTCLK ・・・ 左クリック: アイテムにより左クリックの動作
CLK_DBLCLK ・・・ ダブルクリック: 2段目のクリック動作(1段目としてCLK_LEFTCLK が必要)
CLK_FROMLAST ・・・ 後ろからサーチ: CLK_ACC 指定時にアイテムを後ろからサーチ
CLK_API ・・・ API インターフェースのみを使用
CLK_UIA ・・・ UI Automation インターフェースのみを使用
On/Off:チェックボックス、メニューでのチェック、クリック動作
     True=On(デフォルト)、False=Off

番号: 同名のアイテム名がある場合の
    オブジェクト順番
    (左上から数えたオブジェクト順番[1から指定])

戻値
TRUE:正常
FALSE:処理不能

補足
アイテム名の最後に付く ニーモニック(&A)、(&B)は不要

種別:省略時は下記順でサーチ
BTN ->LIST ->TAB ->MENU ->TREEVEW ->LSTVEW ->TOOLBAR ->LINK
インターフェース指定が無い場合は API ->UIA ->ACC の順でサーチ
メニュー, ツリービュー, スプリットボタン: \ にてパス指定表記可(例:\TOP\TEMP\FILE )ぶつかる物がなければパス指定は不要
リストボックス: 複数選択の場合は タブにて アイテム名を繋げる

指定したウィンドウのIDに対してボタンやアイテムのクリック動作をします。
パラメーターと種別が多いので難しく見えますが、
以下のサンプルでシンプルな動きを参考にして下さい。

電卓を操作する

電卓を起動し、
各ボタンを押下します。

EXEC("calc")
GID = GETID("電卓")
CLKITEM(GID,"1")
CLKITEM(GID,"2")
CLKITEM(GID,"3")
CLKITEM(GID,"4")
CLKITEM(GID,"5")
CLKITEM(GID,"6")

タグ

2012年3月12日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

GETID

GETID関数

ウィンドウのIDを返す
戻値 = GETID(タイトル, [クラス名, 待ち時間秒, MDI子タイトル] )

引数
タイトル: 識別したいウィンドウのタイトルを指定。一部分のみでも可
クラス名: 省略可
待ち時間秒: 確認できるまで指定された待つ秒数(0.01~)
-1にすると無期限で待つ
MDI子タイトル: MDIウィンドウ中の子ウィンドウタイトル
戻値
そのウィンドウを識別するID
取得できなかった場合は-1

補足
タイトルが完全一致するウィンドウを探し、
無い場合、次に部分一致のウィンドウを探す。
※特殊な指定方法
GETID(GET_ACTIVE_WIN) // アクティブウィンドウ
GETID(GET_FROMPOINT_WIN) // マウスカーソル下のウィンドウ
GETID(GET_FROMPOINT_OBJ) // マウスカーソル下のオブジェクト
GETID(GET_THISUWSC_WIN) // UWSC自身
GETID(GET_LOGPRINT_WIN) // ログ表示用のウィンドウ
GETID(GET_FUKIDASI_WIN) // ふきだし用のウィンドウ
GETID(GET_BALLOON_WIN) // ふきだし用のウィンドウ。GET_FUKIDASI_WINと同じ
GETID(GET_FORM_WIN) // フォーム画面ウィンドウ
GETID(GET_FORM_WIN2) // フォーム画面ウィンドウ2
GETID(GET_SCHEDULE_WIN) // スケジュール”指定Windowが現れた時”でキャッチしたウィンドウ

指定したウィンドウのIDを返します。
ウィンドウのIDはこれからUWSCで
さまざまな自動化をする上で重要なIDとなります。
このIDを使い、指定のウィンドウに対して自動化処理を行うことになります。

ウィンドウのIDを表示する

電卓を起動し、
そのウィンドウのIDを取得します。
EXEC関数で直接IDは取得できますが、
サンプルでは敢えてGETID関数を使います。
最後に確認として、数字の”1″を電卓に送ります。

EXEC("calc")
CID = MSGBOX("電卓のウィンドウのIDは" + GETID("電卓"))
SENDSTR(CID,1)

タグ

2012年3月10日 | コメントは受け付けていません。 |

カテゴリー:関数一覧

任意の文字列をメモ帳に書き出したい

任意の文字列をメモ帳に書き出したい
メールの送信文であったり、HTMLのテンプレートであったり
任意の文字列を取り扱うことはよくあると思います。

色々なテンプレート文をファイルに保存していると、間違って上書きしたりと
管理が煩雑です。
あらかじめ決めた文章を、その場でメモ帳にパパッと
書き出せるといいのに。
そんな問題をUWSCで解決してみましょう。


SENDSTR(EXEC("NOTEPAD"),"こんにちは!")

一番簡単な解決方法です。
EXEC関数でメモ帳を起動し、SENDSTR関数で文字を送っています。

しかし、これだと、スクリプトを変えない限りは
いつも同じ文言しか送れないという問題があります。
例えばメール文章のテンプレートで、
作成の度に違う名前を差し込みたい場合はこういうスクリプトはどうでしょうか。

この投稿の続きを読む »

タグ

2012年3月3日 | コメントは受け付けていません。 |

カテゴリー:Q&A

このページの先頭へ