目次
- 1 種別
- 2 種別(追加オプション)
- 3 On/Off
- 4 アイテム名の取得
- 5 使い方
- 6 Internet Explorer
- 6.1 前回のブラウズ セッションは予期せずに終了しました。
- 6.2 アドオンを無効にすることで、閲覧の速度を上げます。
- 6.3 ***は応答してません。
- 6.4 セキュリティで保護されているコンテンツのみ表示されます。
- 6.5 Internet Explorer は応答していません。
- 6.6 Internet Explorer 11は2022年6月15日に廃止されます。Microsoft Edgeに切り替えて、より高速で安全な閲覧エクスペリエンスを実現します。
- 6.7 このページから移動しますか?
- 6.8 ***のダウンロードが完了しました。
- 6.9 ***で行う操作を選んでください。
- 6.10 [名前を付けて保存]ダイアログボックス
- 7 Excel
- 8 プログラム実行例
指定したIDのウィンドウのアイテムをクリックします。アイテムに指定できるものにはボタン・チェックボックス・ラジオボタン・リストボックス・コンボボックス・タブコントロール・メニュー・ツリービュー・リストビュー・ツールバー・リンクがあります。
- 構文
- Boolean = CLKITEM( ID, アイテム名, 種別, On/Off, 番号 )
- 引数
- ID (Integer)必須
- Windowを識別するID
- アイテム名 (String)必須
- ボタン、チェックボックス、ラジオボタンのキャプションの文字 もしくは リストボックス、コンボボックスの選択名 もしくは タブ名 もしくは メニュー項目名 もしくは ツリービュー項目、リストビュー項目 もしくは ツールバー上のボタン名
- 種別 (#clkitem = Empty)省略可
- チェックするアイテム種別
- 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 (Boolean = True)省略可
- チェックボックス, メニューでのチェック、およびクリック動作 True=On、False=Off(デフォルトはOn)
- 番号 (Integer = 1)省略可
- 同名のアイテム名がある場合のオブジェクト順番 (左上から数えたオブジェクト順番[1から指定])
- 戻り値
TRUE:正常、 FALSE:処理不能
アイテム名の最後に付くニーモニック[(&A)、(&B)...、(&C):等]は要りません
種別:省略時は BTN ->LIST ->TAB ->MENU ->TREEVEW ->LSTVEW ->TOOLBAR ->LINK の順でサーチ
インターフェース指定が無い場合は API ->UIA ->ACC の順でサーチ
メニュー, ツリービュー, スプリットボタン: \ にてパス指定表記可
(例:\TOP\TEMP\FILE)ぶつかる物がなければパス指定は不要リストボックス: 複数選択の場合は タブにて アイテム名を繋げる
種別
CLK_BTN
種別にCLK_BTNを指定すると、ボタン・チェックボックス・ラジオボタンを操作できます。以下だと[次を検索]、[置換して次に]、[すべて置換]、[キャンセル]がボタン、大文字と小文字を区別する、折り返しありがチェックボックスに当たります。
CLKITEM(ID, "次を検索", CLK_BTN)
CLKITEM(ID, "置換して次に", CLK_BTN)
CLKITEM(ID, "すべて置換", CLK_BTN)
CLKITEM(ID, "キャンセル", CLK_BTN)
チェックボックスの場合、第四引数にチェックを入れるかどうかを示すブール値を指定します。チェックを入れる場合はTRUE、外す場合はFALSEを指定します。省略した場合はチェックを入れる操作を行います。
CLKITEM(ID, "大文字と小文字を区別する", CLK_BTN, TRUE) // チェックを入れる
CLKITEM(ID, "大文字と小文字を区別する", CLK_BTN, FALSE) // チェックを外す
CLKITEM(ID, "大文字と小文字を区別する" CLK_BTN) // チェックを入れる
チェックボックスの状態を確認するにはCHKBTN関数を使います。
現在のチェックボックスの状態を反転させるには以下のように記述します。CHKBTN関数で現在のチェックボックスの状態を取得し、その値を反転させたものをCLKITEM関数で設定します。!はCHKBTN関数の結果がTrueならばFalseに、FalseならばTrueに反転します。これでチェック状態を反転させています。
CLKITEM(ID, "大文字と小文字を区別する", CLK_BTN, !CHKBTN(ID, "大文字と小文字を区別する"))
上のプログラムを2行に分けて書くと以下のようになります。boolが現在のチェックボックスの状態、!boolが反転させた値です。
DIM bool = CHKBTN(ID, "大文字と小文字を区別する")
CLKITEM(ID, "大文字と小文字を区別する", CLK_BTN, !bool)
指定したウィンドウのIDにCLK_BTNで操作できるアイテムの個数を取得するには以下のプログラムを実行します。
PRINT GETITEM(ID, ITM_BTN, -1)
CLK_LIST
種別にCLK_LISTを指定すると、リストボックス、コンボボックスを操作できます。リストボックスとは以下の画像のように複数の項目から選択できるものを指します。
ファイル名を指定して実行のリストボックスの上から2番目(ALL_ITEM_LISTの値は1)の項目を選択しOKボタンをクリックします。画像のリストの場合、メモ帳(notepad)が起動します。
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.FileRun()
DIM ID = GETID("ファイル名を指定して実行", "#32770")
GETITEM(ID, ITM_LIST, -1)
CLKITEM(ID, ALL_ITEM_LIST[1], CLK_LIST)
CLKITEM(ID, "OK", CLK_BTN)
ファイル名を指定して実行のリストボックスの一番下(ALL_ITEM_LISTの値はcnt-1)の項目を選択しOKボタンをクリックします。画像のリストの場合、システム構成(msconfig)が起動します。
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.FileRun()
DIM ID = GETID("ファイル名を指定して実行", "#32770")
DIM cnt = GETITEM(ID, ITM_LIST, -1)
CLKITEM(ID, ALL_ITEM_LIST[cnt-1], CLK_LIST)
CLKITEM(ID, "OK", CLK_BTN)
CLK_TAB
Excelを起動し、シートタブから[ワークシートの挿入]を選択します。
DIM Excel = CREATEOLEOBJ("Excel.Application")
Excel.Visible = TRUE
Excel.Workbooks.Add
DIM ID = GETID("Excel", "XLMAIN")
CLKITEM(ID, "ワークシートの挿入", CLK_TAB)
サクラエディタで新規ファイルを3つ開き、(無題)2を選択します。
CLK_MENUは挙動がおかしかったので代わりにCLK_ACCを指定します。
DIM ID = EXEC("C:\Program Files (x86)\sakura\sakura.exe")
FOR i = 1 TO 2
PRINT CLKITEM(ID, "新規作成", CLK_ACC OR CLK_SHORT)
SLEEP(1.000)
NEXT
PRINT CLKITEM(ID, "(無題)2", CLK_TAB)
SLEEP(3.000)
CTRLWIN(ID, CLOSE)
サクラエディタで新規ファイルを3つ開き、2番目の(ALL_ITEM_LISTの値は1)項目を選択します。
DIM ID = EXEC("C:\Program Files (x86)\sakura\sakura.exe")
FOR i = 1 TO 2
PRINT CLKITEM(ID, "新規作成", CLK_ACC OR CLK_SHORT)
SLEEP(1.000)
NEXT
GETITEM(ID, ITM_TAB, -1)
PRINT CLKITEM(ID, ALL_ITEM_LIST[1], CLK_TAB)
SLEEP(3.000)
CTRLWIN(ID, CLOSE)
CLK_MENU
メモ帳を起動し、メニューから[ヘルプ]-[バージョン情報]を選択・表示します。
DIM ID = EXEC("notepad")
CLKITEM(ID, "ヘルプ\バージョン情報", CLK_MENU)
CLK_TREEVIEW
ExcelのVisual Basic Editorを起動し、プロジェクトのツリービューからThisWorkbookを選択します。
DIM Excel = CREATEOLEOBJ("Excel.Application")
Excel.Visible = TRUE
Excel.Workbooks.Add
DIM book = Excel.Application.ActiveWorkbook.Name
DIM ID = GETID("Excel", "XLMAIN")
IFB CLKITEM(ID, "開発", CLK_TAB) THEN
CLKITEM(ID, "Visual Basic", CLK_BTN)
ELSE
SCKEY(ID, VK_ALT, VK_F11)
ENDIF
DIM ID2 = GETID("Microsoft Visual Basic for Applications", "wndclass_desked_gsk")
CLKITEM(ID2, "VBAProject (" + book + ")\Microsoft Excel Objects\ThisWorkbook", CLK_TREEVIEW OR CLK_DBLCLK)
ツリービューにThisWorkbookは一つしかないので、一部分でもマッチします。
DIM Excel = CREATEOLEOBJ("Excel.Application")
Excel.Visible = TRUE
Excel.Workbooks.Add
DIM ID = GETID("Excel", "XLMAIN")
IFB CLKITEM(ID, "開発", CLK_TAB) THEN
CLKITEM(ID, "Visual Basic", CLK_BTN)
ELSE
SCKEY(ID, VK_ALT, VK_F11)
ENDIF
DIM ID2 = GETID("Microsoft Visual Basic for Applications", "wndclass_desked_gsk")
PRINT CLKITEM(ID2, "ThisWorkbook", CLK_TREEVIEW OR CLK_DBLCLK)
CLK_TOOLBAR
メモ帳を起動し、ツールバーのヘルプを選択します。
DIM ID = EXEC("notepad")
PRINT CLKITEM(ID, "ヘルプ", CLK_TOOLBAR)
- 結果
種別(追加オプション)
追加オプションは種別との組み合わせで使い、種別 OR 追加オプションの形式で記述します。
CLKITEM(ID, アイテム名, 種別 OR CLK_SHORT)
CLKITEM(ID, アイテム名, 種別 OR CLK_BACK)
CLKITEM(ID, アイテム名, 種別 OR CLK_MUSMOVE)
CLKITEM(ID, アイテム名, 種別 OR CLK_RIGHTCLK)
CLKITEM(ID, アイテム名, 種別 OR CLK_LEFTCLK)
CLKITEM(ID, アイテム名, 種別 OR CLK_LEFTCLK OR CLK_DBLCLK)
CLKITEM(ID, アイテム名, 種別 OR CLK_FROMLAST)
CLKITEM(ID, アイテム名, 種別 OR CLK_API)
CLKITEM(ID, アイテム名, 種別 OR CLK_UIA)
以下はファイル名を指定して実行を起動し、OKボタンにカーソルを移動させるプログラムです。第三引数のCLK_BTNにオプションとしてCLK_MUSMOVEを追加することでボタンにカーソルを移動させる処理を行うことができます。ボタンはデフォルトでクリックされてしまうので、第四引数にFALSEを指定することでクリックさせずにカーソルを移動させるだけの処理を行えます。TRUEを指定するとカーソルを移動させた上でボタンをクリックできます。
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.FileRun
DIM ID = GETID("ファイル名を指定して実行", "#32770")
SENDSTR(ID, "notepad")
SLEEP(0.500)
CLKITEM(ID, "OK", CLK_BTN OR CLK_MUSMOVE, FALSE)
以下はファイル名を指定して実行を起動し、リストボックスの中からnoteに部分一致する項目を選択し、OKボタンをクリックします。「note」は「notepad」を想定しています。ファイル名を指定して実行で履歴にnotepadがない場合はキャンセルして終了します。
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.FileRun
DIM ID = GETID("ファイル名を指定して実行", "#32770")
IFB CLKITEM(ID, "note", CLK_LIST OR CLK_SHORT) THEN
CLKITEM(ID, "OK", CLK_BTN)
ELSE
CLKITEM(ID, "キャンセル", CLK_BTN)
ENDIF
追加オプションが複数ある場合は、ORに続けて追加します。
DIM ID = EXEC("notepad")
SENDSTR(ID, "文字列")
CLKITEM(ID, "編集\検索", CLK_MENU)
DIM ID2 = GETID("検索", "#32770")
SENDSTR(ID2, "検索文字")
CLKITEM(ID2, "区別", CLK_BTN OR CLK_SHORT, TRUE)
CLKITEM(ID2, "折り返し", CLK_BTN OR CLK_SHORT, TRUE)
CLKITEM(ID2, "下", CLK_BTN OR CLK_SHORT, TRUE)
CLKITEM(ID2, "次を検索", CLK_BTN OR CLK_SHORT OR CLK_MUSMOVE, FALSE)
ニーモニックは付けても付けなくてもマッチします。
CLKITEM(ID2, "大文字と小文字を区別する", CLK_BTN, TRUE)
CLKITEM(ID2, "大文字と小文字を区別する(C)", CLK_BTN, TRUE)
On/Off
チェックボックスにチェックを入れる場合はTrue、チェックを外す場合はFalseを指定します。
CLKITEM(ID2, "大文字と小文字を区別する", CLK_BTN, TRUE) // チェックを入れる
CLKITEM(ID2, "大文字と小文字を区別する", CLK_BTN, FALSE) // チェックを外す
アイテム名の取得
アクティブウィンドウのCLKITEM関数で操作できる要素を取得します。結果は実行したUWSファイルと同じディレクトリのCLKITEM.logに出力されます。
OPTION LOGPATH = "CLKITEM.log"
OPTION LOGFILE = 6
HASHTBL ITEMS
ITEMS["ITM_BTN"] = "CLK_BTN"
ITEMS["ITM_LIST"] = "CLK_LIST"
ITEMS["ITM_TAB"] = "CLK_TAB"
ITEMS["ITM_MENU"] = "CLK_MENU"
ITEMS["ITM_TREEVIEW"] = "CLK_TREEVIEW"
ITEMS["ITM_LISTVIEW"] = "CLK_LISTVIEW"
ITEMS["ITM_TOOLBAR"] = "CLK_TOOLBAR"
ITEMS["ITM_LINK"] = "CLK_LINK"
ITEMS["ITM_ACCCLK"] = "CLK_ACC"
FOR sec = 3 TO 1 STEP -1
FUKIDASI(sec + "秒後にアクティブなウィンドウの情報を取得します。")
SLEEP(1.000)
NEXT
DIM ID = GETID(GET_ACTIVE_WIN)
PRINT "DIM ID = GETID(<#DBL>" + STATUS(ID, ST_TITLE) + "<#DBL>, <#DBL>" + STATUS(ID, ST_CLASS) + "<#DBL>)"
PRINT
FUKIDASI("「" + STATUS(ID, ST_TITLE) + "」…取得中")
//FOR item IN array
FOR i = 0 TO LENGTH(ITEMS) - 1
PRINT "//////////////////////////////////////////////////"
PRINT "// " + ITEMS[i, HASH_KEY]
PRINT "//////////////////////////////////////////////////"
PRINT "GETITEM(ID, " + ITEMS[i, HASH_KEY] + ", -1) = " + GETITEM(ID, EVAL(ITEMS[i, HASH_KEY]), -1)
FOR j = 0 TO LENGTH(ALL_ITEM_LIST) - 1
str = ALL_ITEM_LIST[j]
str = REPLACE(str, "<#CR>", "<@cr>")
str = REPLACE(str, "<#DBL>", "<@dbl>")
str = REPLACE(str, "<#TAB>", "<@tab>")
str = REPLACE(str, CHR(10), "<#DBL>+CHR(10)+<#DBL>")
str = REPLACE(str, "<@", "<#")
PRINT "CLKITEM(ID, <#DBL>" + str + "<#DBL>, " + ITEMS[i, HASH_VAL] + ")"
NEXT
PRINT
NEXT
取得例
以下のプログラムは、CLKITEMで操作することができるすべての項目を記載しています。そのため実行するときは必要な箇所のみ抽出してご利用ください。メモ帳で[ファイル]-[新規]をクリックさせたい場合以下のようになります。
DIM ID = GETID("メモ帳", "Notepad")
CLKITEM(ID, "ファイル\開く", CLK_MENU)
また、各1行目にある「DIM ID = GETID(〜)」の部分は開いているファイルによってタイトルが変わることがありますので各自書き換えてください。例えば、メモ帳の場合は「(ファイル名) - メモ帳」というタイトルになるので(ファイル名)の部分に操作したいファイル名を入力してください。
メモ帳
DIM ID = GETID("無題 - メモ帳", "Notepad")
//////////////////////////////////////////////////
// ITM_BTN
//////////////////////////////////////////////////
GETITEM(ID, ITM_BTN, -1) = 5
CLKITEM(ID, "1 行上", CLK_BTN)
CLKITEM(ID, "1 行下", CLK_BTN)
CLKITEM(ID, "最小化", CLK_BTN)
CLKITEM(ID, "最大化", CLK_BTN)
CLKITEM(ID, "閉じる", CLK_BTN)
//////////////////////////////////////////////////
// ITM_LIST
//////////////////////////////////////////////////
GETITEM(ID, ITM_LIST, -1) = 0
//////////////////////////////////////////////////
// ITM_TAB
//////////////////////////////////////////////////
GETITEM(ID, ITM_TAB, -1) = 0
//////////////////////////////////////////////////
// ITM_MENU
//////////////////////////////////////////////////
GETITEM(ID, ITM_MENU, -1) = 30
CLKITEM(ID, "ファイル\新規", CLK_MENU)
CLKITEM(ID, "ファイル\新しいウィンドウ", CLK_MENU)
CLKITEM(ID, "ファイル\開く", CLK_MENU)
CLKITEM(ID, "ファイル\上書き保存", CLK_MENU)
CLKITEM(ID, "ファイル\名前を付けて保存", CLK_MENU)
CLKITEM(ID, "ファイル\ページ設定", CLK_MENU)
CLKITEM(ID, "ファイル\印刷", CLK_MENU)
CLKITEM(ID, "ファイル\メモ帳の終了", CLK_MENU)
CLKITEM(ID, "編集\元に戻す", CLK_MENU)
CLKITEM(ID, "編集\切り取り", CLK_MENU)
CLKITEM(ID, "編集\コピー", CLK_MENU)
CLKITEM(ID, "編集\貼り付け", CLK_MENU)
CLKITEM(ID, "編集\削除", CLK_MENU)
CLKITEM(ID, "編集\Bing で検索", CLK_MENU)
CLKITEM(ID, "編集\検索", CLK_MENU)
CLKITEM(ID, "編集\次を検索", CLK_MENU)
CLKITEM(ID, "編集\前を検索", CLK_MENU)
CLKITEM(ID, "編集\置換", CLK_MENU)
CLKITEM(ID, "編集\行へ移動", CLK_MENU)
CLKITEM(ID, "編集\すべて選択", CLK_MENU)
CLKITEM(ID, "編集\日付と時刻", CLK_MENU)
CLKITEM(ID, "書式\右端で折り返す", CLK_MENU)
CLKITEM(ID, "書式\フォント", CLK_MENU)
CLKITEM(ID, "表示\ズーム\拡大", CLK_MENU)
CLKITEM(ID, "表示\ズーム\縮小", CLK_MENU)
CLKITEM(ID, "表示\ズーム\既定の倍率に戻す", CLK_MENU)
CLKITEM(ID, "表示\ステータス バー", CLK_MENU)
CLKITEM(ID, "ヘルプ\ヘルプの表示", CLK_MENU)
CLKITEM(ID, "ヘルプ\フィードバックの送信", CLK_MENU)
CLKITEM(ID, "ヘルプ\バージョン情報", CLK_MENU)
//////////////////////////////////////////////////
// ITM_TREEVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_TREEVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_LISTVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_LISTVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_TOOLBAR
//////////////////////////////////////////////////
GETITEM(ID, ITM_TOOLBAR, -1) = 5
CLKITEM(ID, "ファイル", CLK_TOOLBAR)
CLKITEM(ID, "編集", CLK_TOOLBAR)
CLKITEM(ID, "書式", CLK_TOOLBAR)
CLKITEM(ID, "表示", CLK_TOOLBAR)
CLKITEM(ID, "ヘルプ", CLK_TOOLBAR)
//////////////////////////////////////////////////
// ITM_LINK
//////////////////////////////////////////////////
GETITEM(ID, ITM_LINK, -1) = 0
//////////////////////////////////////////////////
// ITM_ACCCLK
//////////////////////////////////////////////////
GETITEM(ID, ITM_ACCCLK, -1) = 2
CLKITEM(ID, "1 行上", CLK_ACC)
CLKITEM(ID, "1 行下", CLK_ACC)
ペイント
DIM ID = GETID("無題 - ペイント", "MSPaintApp")
//////////////////////////////////////////////////
// ITM_BTN
//////////////////////////////////////////////////
GETITEM(ID, ITM_BTN, -1) = 2
CLKITEM(ID, "縮小", CLK_BTN)
CLKITEM(ID, "拡大", CLK_BTN)
//////////////////////////////////////////////////
// ITM_LIST
//////////////////////////////////////////////////
GETITEM(ID, ITM_LIST, -1) = 0
//////////////////////////////////////////////////
// ITM_TAB
//////////////////////////////////////////////////
GETITEM(ID, ITM_TAB, -1) = 2
CLKITEM(ID, "ホーム", CLK_TAB)
CLKITEM(ID, "表示", CLK_TAB)
//////////////////////////////////////////////////
// ITM_MENU
//////////////////////////////////////////////////
GETITEM(ID, ITM_MENU, -1) = 0
//////////////////////////////////////////////////
// ITM_TREEVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_TREEVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_LISTVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_LISTVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_TOOLBAR
//////////////////////////////////////////////////
GETITEM(ID, ITM_TOOLBAR, -1) = 9
CLKITEM(ID, "クイック アクセス ツール バー", CLK_TOOLBAR)
CLKITEM(ID, "クリップボード", CLK_TOOLBAR)
CLKITEM(ID, "イメージ"+CHR(10)+"", CLK_TOOLBAR)
CLKITEM(ID, "ツール"+CHR(10)+"", CLK_TOOLBAR)
CLKITEM(ID, "", CLK_TOOLBAR)
CLKITEM(ID, "図形"+CHR(10)+"", CLK_TOOLBAR)
CLKITEM(ID, "", CLK_TOOLBAR)
CLKITEM(ID, "色"+CHR(10)+"", CLK_TOOLBAR)
CLKITEM(ID, "", CLK_TOOLBAR)
//////////////////////////////////////////////////
// ITM_LINK
//////////////////////////////////////////////////
GETITEM(ID, ITM_LINK, -1) = 0
//////////////////////////////////////////////////
// ITM_ACCCLK
//////////////////////////////////////////////////
GETITEM(ID, ITM_ACCCLK, -1) = 97
CLKITEM(ID, "UIRibbonDockLeft", CLK_ACC)
CLKITEM(ID, "UIRibbonDockRight", CLK_ACC)
CLKITEM(ID, "UIRibbonDockTop", CLK_ACC)
CLKITEM(ID, "Ribbon", CLK_ACC)
CLKITEM(ID, "新規", CLK_ACC)
CLKITEM(ID, "開く", CLK_ACC)
CLKITEM(ID, "上書き保存", CLK_ACC)
CLKITEM(ID, "印刷", CLK_ACC)
CLKITEM(ID, "印刷プレビュー", CLK_ACC)
CLKITEM(ID, "電子メールの送信", CLK_ACC)
CLKITEM(ID, "元に戻す", CLK_ACC)
CLKITEM(ID, "やり直し", CLK_ACC)
CLKITEM(ID, "クイック アクセス ツール バーのカスタマイズ", CLK_ACC)
CLKITEM(ID, "その他のコントロール", CLK_ACC)
CLKITEM(ID, "ファイル タブ", CLK_ACC)
CLKITEM(ID, "ホーム", CLK_ACC)
CLKITEM(ID, "表示", CLK_ACC)
CLKITEM(ID, "印刷プレビュー", CLK_ACC)
CLKITEM(ID, "1 列左", CLK_ACC)
CLKITEM(ID, "1 列右", CLK_ACC)
CLKITEM(ID, "リボンの最小化", CLK_ACC)
CLKITEM(ID, "リボンの最小化", CLK_ACC)
CLKITEM(ID, "ヘルプ", CLK_ACC)
CLKITEM(ID, "貼り付け", CLK_ACC)
CLKITEM(ID, "貼り付け", CLK_ACC)
CLKITEM(ID, "切り取り", CLK_ACC)
CLKITEM(ID, "コピー", CLK_ACC)
CLKITEM(ID, "クリップボード", CLK_ACC)
CLKITEM(ID, "選択", CLK_ACC)
CLKITEM(ID, "選択", CLK_ACC)
CLKITEM(ID, "トリミング", CLK_ACC)
CLKITEM(ID, "サイズ変更", CLK_ACC)
CLKITEM(ID, "回転", CLK_ACC)
CLKITEM(ID, "イメージ", CLK_ACC)
CLKITEM(ID, "鉛筆", CLK_ACC)
CLKITEM(ID, "塗りつぶし", CLK_ACC)
CLKITEM(ID, "テキスト", CLK_ACC)
CLKITEM(ID, "消しゴム", CLK_ACC)
CLKITEM(ID, "色の選択", CLK_ACC)
CLKITEM(ID, "拡大鏡", CLK_ACC)
CLKITEM(ID, "ツール", CLK_ACC)
CLKITEM(ID, "ブラシ", CLK_ACC)
CLKITEM(ID, "ブラシ", CLK_ACC)
CLKITEM(ID, "図形", CLK_ACC)
CLKITEM(ID, "直線", CLK_ACC)
CLKITEM(ID, "曲線", CLK_ACC)
CLKITEM(ID, "楕円形", CLK_ACC)
CLKITEM(ID, "四角形", CLK_ACC)
CLKITEM(ID, "角丸四角形", CLK_ACC)
CLKITEM(ID, "多角形", CLK_ACC)
CLKITEM(ID, "三角形", CLK_ACC)
CLKITEM(ID, "直角三角形", CLK_ACC)
CLKITEM(ID, "ひし形", CLK_ACC)
CLKITEM(ID, "五角形", CLK_ACC)
CLKITEM(ID, "六角形", CLK_ACC)
CLKITEM(ID, "右矢印", CLK_ACC)
CLKITEM(ID, "左矢印", CLK_ACC)
CLKITEM(ID, "上矢印", CLK_ACC)
CLKITEM(ID, "下矢印", CLK_ACC)
CLKITEM(ID, "星 4", CLK_ACC)
CLKITEM(ID, "星 5", CLK_ACC)
CLKITEM(ID, "星 6", CLK_ACC)
CLKITEM(ID, "角丸四角形吹き出し", CLK_ACC)
CLKITEM(ID, "楕円形吹き出し", CLK_ACC)
CLKITEM(ID, "雲形吹き出し", CLK_ACC)
CLKITEM(ID, "ハート", CLK_ACC)
CLKITEM(ID, "稲妻", CLK_ACC)
CLKITEM(ID, "1 行上", CLK_ACC)
CLKITEM(ID, "前のページ", CLK_ACC)
CLKITEM(ID, "次のページ", CLK_ACC)
CLKITEM(ID, "1 行下", CLK_ACC)
CLKITEM(ID, "1 列左", CLK_ACC)
CLKITEM(ID, "左のページ", CLK_ACC)
CLKITEM(ID, "右のページ", CLK_ACC)
CLKITEM(ID, "1 列右", CLK_ACC)
CLKITEM(ID, "上へ移動", CLK_ACC)
CLKITEM(ID, "下へ移動", CLK_ACC)
CLKITEM(ID, "図形", CLK_ACC)
CLKITEM(ID, "輪郭", CLK_ACC)
CLKITEM(ID, "塗りつぶし", CLK_ACC)
CLKITEM(ID, "図形", CLK_ACC)
CLKITEM(ID, "線の幅", CLK_ACC)
CLKITEM(ID, "色 1", CLK_ACC)
CLKITEM(ID, "色 2", CLK_ACC)
CLKITEM(ID, "色の編集", CLK_ACC)
CLKITEM(ID, "色", CLK_ACC)
CLKITEM(ID, "ペイント 3D で編集する", CLK_ACC)
CLKITEM(ID, "1 列左", CLK_ACC)
CLKITEM(ID, "1 列右", CLK_ACC)
CLKITEM(ID, "UIRibbonDockBottom", CLK_ACC)
CLKITEM(ID, "キャンバス での ブラシ ツールの使用", CLK_ACC)
CLKITEM(ID, "UIRibbonWorkPane", CLK_ACC)
CLKITEM(ID, "縮小", CLK_ACC)
CLKITEM(ID, "ズーム スライダー", CLK_ACC)
CLKITEM(ID, "左へドラッグ", CLK_ACC)
CLKITEM(ID, "右へドラッグ", CLK_ACC)
CLKITEM(ID, "拡大", CLK_ACC)
UWSC Pro
DIM ID = GETID("UWSC Pro", "TUMain_uwsc")
//////////////////////////////////////////////////
// ITM_BTN
//////////////////////////////////////////////////
GETITEM(ID, ITM_BTN, -1) = 5
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
//////////////////////////////////////////////////
// ITM_LIST
//////////////////////////////////////////////////
GETITEM(ID, ITM_LIST, -1) = 0
//////////////////////////////////////////////////
// ITM_TAB
//////////////////////////////////////////////////
GETITEM(ID, ITM_TAB, -1) = 0
//////////////////////////////////////////////////
// ITM_MENU
//////////////////////////////////////////////////
GETITEM(ID, ITM_MENU, -1) = 0
//////////////////////////////////////////////////
// ITM_TREEVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_TREEVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_LISTVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_LISTVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_TOOLBAR
//////////////////////////////////////////////////
GETITEM(ID, ITM_TOOLBAR, -1) = 0
//////////////////////////////////////////////////
// ITM_LINK
//////////////////////////////////////////////////
GETITEM(ID, ITM_LINK, -1) = 0
//////////////////////////////////////////////////
// ITM_ACCCLK
//////////////////////////////////////////////////
GETITEM(ID, ITM_ACCCLK, -1) = 0
UWSC Debugger
DIM ID = GETID("UWSC Debugger", "TFOya")
//////////////////////////////////////////////////
// ITM_BTN
//////////////////////////////////////////////////
GETITEM(ID, ITM_BTN, -1) = 14
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
CLKITEM(ID, "Script", CLK_BTN)
CLKITEM(ID, "Option", CLK_BTN)
CLKITEM(ID, "Help", CLK_BTN)
CLKITEM(ID, "△", CLK_BTN)
CLKITEM(ID, "▽", CLK_BTN)
CLKITEM(ID, "Trace", CLK_BTN)
CLKITEM(ID, "", CLK_BTN)
//////////////////////////////////////////////////
// ITM_LIST
//////////////////////////////////////////////////
GETITEM(ID, ITM_LIST, -1) = 0
//////////////////////////////////////////////////
// ITM_TAB
//////////////////////////////////////////////////
GETITEM(ID, ITM_TAB, -1) = 1
CLKITEM(ID, "", CLK_TAB)
//////////////////////////////////////////////////
// ITM_MENU
//////////////////////////////////////////////////
GETITEM(ID, ITM_MENU, -1) = 0
//////////////////////////////////////////////////
// ITM_TREEVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_TREEVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_LISTVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_LISTVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_TOOLBAR
//////////////////////////////////////////////////
GETITEM(ID, ITM_TOOLBAR, -1) = 0
//////////////////////////////////////////////////
// ITM_LINK
//////////////////////////////////////////////////
GETITEM(ID, ITM_LINK, -1) = 0
//////////////////////////////////////////////////
// ITM_ACCCLK
//////////////////////////////////////////////////
GETITEM(ID, ITM_ACCCLK, -1) = 9
CLKITEM(ID, "△", CLK_ACC)
CLKITEM(ID, "▽", CLK_ACC)
CLKITEM(ID, "開く", CLK_ACC)
CLKITEM(ID, "Trace", CLK_ACC)
CLKITEM(ID, "Script", CLK_ACC)
CLKITEM(ID, "Option", CLK_ACC)
CLKITEM(ID, "Help", CLK_ACC)
CLKITEM(ID, "1 行上", CLK_ACC)
CLKITEM(ID, "1 行下", CLK_ACC)
ファイル名を指定して実行
DIM ID = GETID("ファイル名を指定して実行", "#32770")
//////////////////////////////////////////////////
// ITM_BTN
//////////////////////////////////////////////////
GETITEM(ID, ITM_BTN, -1) = 3
CLKITEM(ID, "OK", CLK_BTN)
CLKITEM(ID, "キャンセル", CLK_BTN)
CLKITEM(ID, "参照", CLK_BTN)
//////////////////////////////////////////////////
// ITM_LIST
//////////////////////////////////////////////////
GETITEM(ID, ITM_LIST, -1) = 14
CLKITEM(ID, "mspaint", CLK_LIST)
CLKITEM(ID, "notepad", CLK_LIST)
CLKITEM(ID, "excel", CLK_LIST)
CLKITEM(ID, "%windir%\SoftwareDistribution\Download", CLK_LIST)
CLKITEM(ID, "%USERPROFILE%\AppData\Local\Temp", CLK_LIST)
CLKITEM(ID, "temp", CLK_LIST)
CLKITEM(ID, "cmd", CLK_LIST)
CLKITEM(ID, "shell:startup", CLK_LIST)
CLKITEM(ID, "prefetch", CLK_LIST)
CLKITEM(ID, "services.msc", CLK_LIST)
CLKITEM(ID, "shutdown /r /t 0", CLK_LIST)
CLKITEM(ID, "%temp%", CLK_LIST)
CLKITEM(ID, "winword", CLK_LIST)
CLKITEM(ID, "msconfig", CLK_LIST)
//////////////////////////////////////////////////
// ITM_TAB
//////////////////////////////////////////////////
GETITEM(ID, ITM_TAB, -1) = 0
//////////////////////////////////////////////////
// ITM_MENU
//////////////////////////////////////////////////
GETITEM(ID, ITM_MENU, -1) = 0
//////////////////////////////////////////////////
// ITM_TREEVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_TREEVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_LISTVIEW
//////////////////////////////////////////////////
GETITEM(ID, ITM_LISTVIEW, -1) = 0
//////////////////////////////////////////////////
// ITM_TOOLBAR
//////////////////////////////////////////////////
GETITEM(ID, ITM_TOOLBAR, -1) = 0
//////////////////////////////////////////////////
// ITM_LINK
//////////////////////////////////////////////////
GETITEM(ID, ITM_LINK, -1) = 0
//////////////////////////////////////////////////
// ITM_ACCCLK
//////////////////////////////////////////////////
GETITEM(ID, ITM_ACCCLK, -1) = 21
CLKITEM(ID, "開く", CLK_ACC)
CLKITEM(ID, "mspaint", CLK_ACC)
CLKITEM(ID, "notepad", CLK_ACC)
CLKITEM(ID, "excel", CLK_ACC)
CLKITEM(ID, "%windir%\SoftwareDistribution\Download", CLK_ACC)
CLKITEM(ID, "%USERPROFILE%\AppData\Local\Temp", CLK_ACC)
CLKITEM(ID, "temp", CLK_ACC)
CLKITEM(ID, "cmd", CLK_ACC)
CLKITEM(ID, "shell:startup", CLK_ACC)
CLKITEM(ID, "prefetch", CLK_ACC)
CLKITEM(ID, "services.msc", CLK_ACC)
CLKITEM(ID, "shutdown /r /t 0", CLK_ACC)
CLKITEM(ID, "%temp%", CLK_ACC)
CLKITEM(ID, "winword", CLK_ACC)
CLKITEM(ID, "msconfig", CLK_ACC)
CLKITEM(ID, "1 行上", CLK_ACC)
CLKITEM(ID, "1 行下", CLK_ACC)
CLKITEM(ID, "別メモリ領域で実行する", CLK_ACC)
CLKITEM(ID, "OK", CLK_ACC)
CLKITEM(ID, "キャンセル", CLK_ACC)
CLKITEM(ID, "参照", CLK_ACC)
使い方
リストビューの選択
アクティブウィンドウにあるすべてのリストビュー(曲)を上から順番に選択していきます。Alarm01.wav、Alarm02.wav、Alarm03.wav、…と選択されます。
DIM ID = EXEC("C:\Program Files (x86)\Mp3tag\Mp3tag.exe")
FOR i = 0 TO GETITEM(ID, ITM_LISTVIEW, -1) - 1
CLKITEM(ID, ALL_ITEM_LIST[i], CLK_LISTVIEW)
SLEEP(1.000)
NEXT
ツリービューの選択
DIM ID = GETID("Microsoft Visual Basic for Applications", "wndclass_desked_gsk")
PRINT CLKITEM(ID, "VBAProject (Book1)", CLK_TREEVIEW, TRUE)
PRINT CLKITEM(ID, "VBAProject (Book1)\Microsoft Excel Objects", CLK_TREEVIEW, TRUE)
PRINT CLKITEM(ID, "VBAProject (Book1)\Microsoft Excel Objects\Sheet1 (Sheet1)", CLK_TREEVIEW, TRUE)
PRINT CLKITEM(ID, "VBAProject (Book1)\Microsoft Excel Objects\Sheet2 (Sheet2)", CLK_TREEVIEW, TRUE)
PRINT CLKITEM(ID, "VBAProject (Book1)\Microsoft Excel Objects\Sheet3 (Sheet3)", CLK_TREEVIEW, TRUE)
PRINT CLKITEM(ID, "VBAProject (Book1)\Microsoft Excel Objects\ThisWorkbook", CLK_TREEVIEW, TRUE)
PRINT CLKITEM(ID, "VBAProject (Book1)\標準モジュール", CLK_TREEVIEW, TRUE)
PRINT CLKITEM(ID, "VBAProject (Book1)\標準モジュール\Module1", CLK_TREEVIEW, TRUE)
Internet Explorer
前回のブラウズ セッションは予期せずに終了しました。
DIM ID = GETID("Internet Explorer", "IEFrame")
CLKITEM(ID, "セッションの復元", CLK_BTN)
アドオンを無効にすることで、閲覧の速度を上げます。
ID = GETID("Internet Explorer", "IEFrame")
CLKITEM(ID, "アドオンの選択", CLK_BTN)
***は応答してません。
ID = GETID("Internet Explorer", "IEFrame")
CLKITEM(ID, "Web ページの回復", CLK_BTN)
セキュリティで保護されているコンテンツのみ表示されます。
DIM ID = GETID("Internet Explorer", "IEFrame")
CLKITEM(ID, "すべてのコンテンツを表示", CLK_BTN)
Internet Explorer は応答していません。
Internet Explorer 11は2022年6月15日に廃止されます。Microsoft Edgeに切り替えて、より高速で安全な閲覧エクスペリエンスを実現します。
// [ITM_BTN]
CLKITEM(ID, "Microsoft Edge を起動する", ITM_BTN)
CLKITEM(ID, "もっと詳しく", ITM_BTN)
// [ITM_ACCCLK]
CLKITEM(ID, "Microsoft Edge を起動する", ITM_ACCCLK)
CLKITEM(ID, "もっと詳しく", ITM_ACCCLK)
このページから移動しますか?
DIM ID = GETID("Windows Internet Explorer", "#32770")
CLKITEM(ID, "このページから移動", CLK_BTN)
CLKITEM(ID, "ページに留まる", CLK_BTN)
***のダウンロードが完了しました。
DIM ID = GETID("Vector:UWSC (Windows10/8/7/Vista/XP/2000/NT / ユーティリティ) - Internet Explorer", "IEFrame")
CLKITEM(ID, "フォルダーを開く", CLK_BTN)
CLKITEM(ID, "ダウンロードの表示", CLK_BTN)
CLKITEM(ID, "閉じる", CLK_BTN)
***で行う操作を選んでください。
DIM ID = GETID("Internet Explorer", "#32770")
CLKITEM(ID, "開く", CLK_BTN)
CLKITEM(ID, "保存", CLK_BTN)
CLKITEM(ID, "名前を付けて保存", CLK_BTN)
CLKITEM(ID, "キャンセル", CLK_BTN)
[名前を付けて保存]ダイアログボックス
DIM ID = GETID("名前を付けて保存", "#32770")
CLKITEM(ID, "クイック アクセス", ITM_TREEVIEW)
CLKITEM(ID, "クイック アクセス\デスクトップ", ITM_TREEVIEW)
CLKITEM(ID, "クイック アクセス\ドキュメント", ITM_TREEVIEW)
CLKITEM(ID, "クイック アクセス\ダウンロード", ITM_TREEVIEW)
CLKITEM(ID, "クイック アクセス\ピクチャ", ITM_TREEVIEW)
CLKITEM(ID, "クイック アクセス\Google ドライブ", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\3D オブジェクト", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\ダウンロード", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\デスクトップ", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\ドキュメント", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\ピクチャ", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\ビデオ", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\ミュージック", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\ローカル ディスク (C:)", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\Multimedia (\\192.168.3.23) (M:)", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\PC\Public (\\192.168.3.23) (P:)", ITM_TREEVIEW)
CLKITEM(ID, "デスクトップ\ネットワーク", ITM_TREEVIEW
例えば「PC\ドキュメント」を開くときは以下のように記述します。CLKITEM関数では項目が選択されるだけで開かれないのでEnterキーで開きます。
DIM ID = GETID("名前を付けて保存", "#32770")
CTRLWIN(ID, ACTIVATE)
SLEEP(0.500)
CLKITEM(ID, "デスクトップ\PC\ドキュメント", ITM_TREEVIEW)
SCKEY(ID, VK_ENTER)
Excel
パスワードつきのブックを開いたときの入力ボックス
DIM ID = GETID("パスワード", "bosa_sdm_XL9")
// [ITM_BTN]
CLKITEM(ID, "コンテキスト ヘルプ", ITM_BTN)
CLKITEM(ID, "閉じる", ITM_BTN)
CLKITEM(ID, "OK", ITM_BTN)
CLKITEM(ID, "キャンセル", ITM_BTN)
// [ITM_LIST]
// [ITM_TAB]
// [ITM_MENU]
// [ITM_TREEVIEW]
// [ITM_LISTVIEW]
// [ITM_EDIT]
CLKITEM(ID, "", ITM_EDIT)
// [ITM_STATIC]
CLKITEM(ID, "'Book1.xlsx' は保護されています。", ITM_STATIC)
CLKITEM(ID, "パスワード(P):", ITM_STATIC)
// [ITM_STATUSBAR]
// [ITM_TOOLBAR]
// [ITM_LINK]
// [ITM_ACCCLK]
CLKITEM(ID, "OK", ITM_ACCCLK)
CLKITEM(ID, "キャンセル", ITM_ACCCLK)
// [ITM_ACCCLK2]
CLKITEM(ID, "OK", ITM_ACCCLK2)
CLKITEM(ID, "キャンセル", ITM_ACCCLK2)
// [ITM_ACCTXT]
CLKITEM(ID, "'Book1.xlsx' は保護されています。", ITM_ACCTXT)
CLKITEM(ID, "パスワード(P):", ITM_ACCTXT)
// [ITM_ACCEDIT]
CLKITEM(ID, "パスワード(P):", ITM_ACCEDIT)
CLKITEM(ID, "パスワード(P):", ITM_ACCEDIT)
// [ITM_FROMLAST]
プログラム実行例
ファイル名を指定して実行で「ごみ箱」を開く
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.FileRun
DIM ID = GETID("ファイル名を指定して実行", "#32770")
SENDSTR(ID, "shell:RecycleBinFolder")
CLKITEM(ID, "OK", ITM_BTN)
電卓を操作し計算をする
電卓を操作します。
EXEC("calc")
DIM ID = GETID("電卓")
CLKITEM(ID, "3", CLK_BTN)
CLKITEM(ID, "小数点", CLK_BTN)
CLKITEM(ID, "6", CLK_BTN)
CLKITEM(ID, "プラス", CLK_BTN)
CLKITEM(ID, "5", CLK_BTN)
CLKITEM(ID, "小数点", CLK_BTN)
CLKITEM(ID, "8", CLK_BTN)
CLKITEM(ID, "等号", CLK_BTN)
// CTRLWIN(ID, CLOSE)
メモ帳に本文を入力し[名前を付けて保存]ダイアログボックスを開いて保存する
DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
DIM path = "D:\Desktop\sample.txt"
DIM folderspec = FSO.GetParentFolderName(path)
DIM filename = FSO.GetFileName(path)
EXEC("notepad")
DIM ID = GETID("メモ帳", "Notepad")
SENDSTR(ID, "内容", 0)
CLKITEM(ID, "ファイル\名前を付けて保存", CLK_MENU)
IFB FSO.FolderExists(folderspec) THEN
DIM ID2 = GETID("名前を付けて保存", "#32770")
CTRLWIN(ID2, ACTIVATE)
SLEEP(0.500)
SCKEY(ID2, VK_F4)
SENDSTR(ID2, folderspec, 1, TRUE)
SCKEY(ID2, VK_RETURN)
SLEEP(0.500)
SCKEY(ID2, VK_ALT, VK_N)
SENDSTR(ID2, filename, 1, TRUE)
SLEEP(0.500)
CLKITEM(ID, "保存", ITM_BTN)
ELSE
PRINT "フォルダが存在しません。"
ENDIF
電卓を操作し計算した結果を取得
EXEC("calc")
DIM ID = GETID("電卓")
DIM array[] = "1", "5", "小数点", "4", "プラス", "3", "等号"
FOR item IN array
CLKITEM(ID, item, ITM_BTN)
NEXT
FOR item IN GETITEM(ID, ITM_STATIC)
IFB POS("表示は ", item) AND POS(" です", item) THEN
PRINT VAL(REPLACE(REPLACE(item,"表示は ", ""), " です", ""))
ENDIF
NEXT
CTRLWIN(ID, CLOSE)
18.4
ユーザーの切り替え
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.ShutdownWindows()
DIM ID = GETID("Windows のシャットダウン", "#32770")
CLKITEM(ID, "ユーザーの切り替え", ITM_LIST)
CLKITEM(ID, "OK", ITM_BTN)
サインアウト
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.ShutdownWindows()
DIM ID = GETID("Windows のシャットダウン", "#32770")
CLKITEM(ID, "サインアウト", ITM_LIST)
CLKITEM(ID, "OK", ITM_BTN)
スリープ
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.ShutdownWindows()
DIM ID = GETID("Windows のシャットダウン", "#32770")
CLKITEM(ID, "スリープ", ITM_LIST)
CLKITEM(ID, "OK", ITM_BTN)
シャットダウン
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.ShutdownWindows()
DIM ID = GETID("Windows のシャットダウン", "#32770")
CLKITEM(ID, "シャットダウン", ITM_LIST)
CLKITEM(ID, "OK", ITM_BTN)
再起動
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.ShutdownWindows()
DIM ID = GETID("Windows のシャットダウン", "#32770")
CLKITEM(ID, "再起動", ITM_LIST)
CLKITEM(ID, "OK", ITM_BTN)
ファイルを開いているプロセスを調べる
SETHOTKEY(VK_ESC, EMPTYPARAM, "forceQuit")
CONST TemporaryFolder = 2
DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
WITH FSO
DIM Folder = .GetSpecialFolder(TemporaryFolder)
DIM folderspec = Folder.Path
DIM filename = .GetTempName
DIM path = .BuildPath(folderspec, filename)
ENDWITH
DIM Shell = CREATEOLEOBJ("Shell.Application")
Shell.FileRun()
DIM ID = GETID("ファイル名を指定して実行", "#32770")
SENDSTR(ID, "cmd /c openfiles /query /fo CSV > " + path)
CLKITEM(ID, "OK", CLK_BTN)
SLEEP(0.500)
REPEAT
SLEEP(0.100)
UNTIL GETID("C:\WINDOWS\system32\cmd.exe", "ConsoleWindowClass") = -1
DIM FID = FOPEN(path, F_READ)
TRY
DIM ID2 = GETID("使用中", "OperationStatusWindow")
GETITEM(ID2, ITM_ACCTXT, 1)
DIM str = ALL_ITEM_LIST[1]
DIM sep = IIF(POS("フォルダー", STATUS(ID2, ST_TITLE)) <> 0, "\", "")
DIM msg = "■" + str + "<#CR>"
FOR r = 5 TO FGET(FID, F_LINECOUNT)
IF POS("\" + str + sep, FGET(FID, r, 3)) <> 0 THEN
msg = msg + "ID:" + FGET(FID, r, 1) + ", プロセス名:" + FGET(FID, r, 2) + "<#CR>"
ENDIF
NEXT
FCLOSE(FID)
REPEAT
FUKIDASI(TRIM(msg))
SLEEP(0.100)
UNTIL GETID("使用中", "OperationStatusWindow") = -1
FINALLY
FSO.DeleteFile(path)
ENDTRY
//////////////////////////////////////////////////
// 【引数】
//
// 【戻り値】
//
//////////////////////////////////////////////////
PROCEDURE forceQuit()
EXITEXIT
FEND
//////////////////////////////////////////////////
// 【引数】
// expr : 評価する式
// truepart : 評価した式がTrueのときに返す値
// falsepart : 評価した式がFalseのときに返す値
// 【戻り値】
// truepart : 評価した式がTrueのとき、falsepart : 評価した式がFalseのとき
//////////////////////////////////////////////////
FUNCTION IIF(expr, truepart, falsepart)
IFB EVAL(expr) THEN
RESULT = truepart
ELSE
RESULT = falsepart
ENDIF
FEND
ペイントで設定できるズーム倍率を取得
DIM ID = EXEC("mspaint")
SETSLIDER(ID, 0, 0)
PRINT GETSTR(ID, 2, STR_STATIC)
REPEAT
CLKITEM(ID, "拡大", CLK_BTN)
PRINT GETSTR(ID, 2, STR_STATIC)
UNTIL GETSLIDER(ID, 0, SLD_POS) = 100
CTRLWIN(ID, CLOSE2)
12.50%
25%
50%
100%
200%
300%
400%
500%
600%
700%
800%
CLKITEMで操作できる項目を取得
PUBLIC flg = FALSE
SETHOTKEY(VK_ESC, EMPTYPARAM, "forceQuit")
SETHOTKEY(VK_X, MOD_ALT, "flag")
DIM array[] = "BTN", "LIST", "TAB", "MENU", "TREEVIEW", + _
"LISTVIEW", "EDIT", "STATIC", "STATUSBAR", "TOOLBAR", + _
"LINK", "ACCCLK", "ACCCLK2", "ACCTXT", "ACCEDIT", + _
"FROMLAST", "BACK"
REPEAT
FUKIDASI("Alt + Xでカーソル下の情報を取得")
SLEEP(0.001)
UNTIL flg
FUKIDASI("取得中")
DIM ID = GETID(GET_FROMPOINT_WIN)
PRINT "DIM ID = GETID(<#DBL>" + STATUS(ID, ST_TITLE) + "<#DBL>, <#DBL>" + STATUS(ID, ST_CLASS) + "<#DBL>)"
PRINT
FOR item IN array
PRINT "// [" + item + "]"
FOR class IN GETITEM(ID, EVAL("ITM_" + item), -1)
PRINT "CLKITEM(ID, <#DBL>" + class + "<#DBL>, CLK_" + item + ")"
NEXT
PRINT
NEXT
PROCEDURE forceQuit()
EXITEXIT
FEND
PROCEDURE flag()
flg = TRUE
FEND
関連記事
- GETITEM関数 (スクリプト関数)
- 指定したIDのウィンドウのキャプション文字やリストなどを取得します。取得した情報は配列変数のALL_ITEM_LIST[ ]に格納されます。戻値は取得した数でInteger型です。
- SLCTBOX関数 (スクリプト関数)
- セレクトボックスを表示します。第一引数に選択肢の種別、第二引数にタイムアウト時間、第三引数が数値ならx座標、第四引数にy座標、第三引数が数値でなければメッセージ、メッセージの次の引数に項目を指定します。
- CHKBTN関数 (スクリプト関数)
- 指定したIDのウィンドウにあるチェックボックス・ラジオボタンがチェックされているかを返します。
- GETCTLHND関数 (スクリプト関数)
- ボタン等、オブジェクトのハンドルを取得します。
- ACW関数 (スクリプト関数)
- 指定したIDのウィンドウの位置・サイズを変更します。IDのみを指定した場合、そのウィンドウをアクティブにします。
- GETID関数 (スクリプト関数)
- 指定したウィンドウのIDを取得します。第一引数に取得したいウィンドウのタイトル(一部でも可)を指定します。UWSCでウィンドウを操作するのによく使う関数です。
- HNDTOID関数 (スクリプト関数)
- 引数に指定したハンドル値をIDに変換して返します。IDをハンドル値に変換するにはIDTOHND関数を使います。
- CTRLWIN関数 (スクリプト関数)
- ウィンドウの状態を操作します。ウィンドウを終了、アクティブ化、表示・非表示、最大化・最小化などができます。
- GETALLWIN関数 (スクリプト関数)
- 全ウィンドウのIDを取得します。
- IDTOHND関数 (スクリプト関数)
- 引数に指定したIDをハンドル値に変換して返します。ハンドル値をIDに変換するにはHNDTOID関数を使います。