Contents
ショートカットキーを実行します。
- 構文
- void = SCKEY( ID, キー, キー, キー, キー, ... )
- 引数
- ID必須
- Windowを識別するID。指定するウィンドウがない場合には IDに 0を指定。
- キー必須
- アルファベット1文字もしくは仮想キー(VK_*)動作としてVK_SHIFT, VK_CTRL, VK_ALT, VK_WIN のキー指定は押し下げ状態のまま処理する
- 戻り値
プログラム実行例
アクティブウィンドウのスクリーンショットを撮る
クリップボードにスクリーンショットがコピーされます。
SCKEY(GETID(GET_ACTIVE_WIN), VK_ALT, VK_SNAPSHOT)
-
(1)
(1)
メモ帳に本文を入力し[名前を付けて保存]ダイアログボックスを開いて保存する
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
-
(1)
(3)
(4)
(6)
(7,12)
(8.19,25)
(9,28)
- FSO.FolderExists(11) (14) (15,21,26) (18,20,24)
解説
- 1行目
- FileSystemObjectオブジェクトを生成し、 FSO に代入します。
DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
- 2行目
- 保存先のパスを指定。
DIM path = "D:\Desktop\sample.txt"
- 3行目
- パスからフォルダ部分を取得。
DIM folderspec = FSO.GetParentFolderName(path)
- 4行目
- パスからファイル名を取得。
DIM filename = FSO.GetFileName(path)
- 6行目
- メモ帳を起動。
EXEC("notepad")
- 7行目
- メモ帳のIDを取得。
DIM ID = GETID("メモ帳", "Notepad")
- 8行目
- メモ帳に文章を入力。
SENDSTR(ID, "内容", 0)
- 9行目
- [名前を付けて保存]を実行。
CLKITEM(ID, "ファイル\名前を付けて保存", CLK_MENU)
- 12行目
- [名前を付けて保存]ダイアログボックスのIDを取得。
DIM ID2 = GETID("名前を付けて保存", "#32770")
- 14行目
- [名前を付けて保存]ウインドウをアクティブ化する。
CTRLWIN(ID2, ACTIVATE)
- 15行目
- 0.500秒待機する。
SLEEP(0.500)
- 17行目
- F4キーでアドレスバーを選択。
SCKEY(ID2, VK_F4)
- 18行目
- フォルダ名を入力。
SENDSTR(ID2, folderspec, 1, TRUE)
- 19行目
- Enterキーで確定・移動。
SCKEY(ID2, VK_RETURN)
- 20行目
- 0.500秒待機する。
SLEEP(0.500)
- 22行目
- Alt+Nでファイル名を選択。
SCKEY(ID2, VK_ALT, VK_N)
- 23行目
- ファイル名を入力。
SENDSTR(ID2, filename, 1, TRUE)
- 24行目
- 0.500秒待機する。
SLEEP(0.500)
- 26行目
- [保存]ボタンをクリックする。
CLKITEM(ID, "保存", ITM_BTN)
仮想キーで文章を入力
DIM ID = EXEC("notepad")
CTRLWIN(ID, ACTIVATE)
SCKEY(ID, VK_SHIFT, VK_T)
SCKEY(ID, VK_H, VK_I, VK_S, VK_SPACE, VK_I, VK_S, VK_SPACE, VK_A, VK_SPACE, VK_P, VK_E, VK_N, VK_OEM_PERIOD)
-
(1)
(3)
(5-6)
- 結果
This is a pen.
キーコードの調べ方
入力したキーの仮想キーコードをリアルタイムで調べることのできるフリーソフトウェアのKeymillを使うと簡単に取得できます。
KT Software - Keymill例
デスクトップを表示する(Windows+D)
SCKEY(0, VK_WIN, VK_D)
設定画面を表示する(Windows+I)
SCKEY(0, VK_WIN, VK_I)
仮想デスクトップを追加する(Windows+CTRL+D)
SCKEY(0, VK_WIN, VK_CTRL, VK_D)
仮想キーコード一覧
値 | 定数名 | キー |
---|---|---|
8 | VK_BACK | Backspaceキー |
9 | VK_TAB | Tabキー |
12 | VK_CLEAR | Clearキー |
13 | VK_RETURN | Enterキー |
13 | VK_ENTER | Enterキー |
16 | VK_SHIFT | Shiftキー |
17 | VK_CTRL | Ctrlキー |
17 | VK_CONTROL | Ctrlキー |
18 | VK_ALT | Altキー |
18 | VK_MENU | Altキー |
19 | VK_PAUSE | Pauseキー |
20 | VK_CAPITAL | CapsLockキー |
21 | VK_KANA | IMEかなモード |
24 | VK_FINAL | IME final mode |
25 | VK_KANJI | IME漢字モード |
27 | VK_ESC | Escキー |
27 | VK_ESCAPE | Escキー |
28 | VK_CONVERT | 変換キー |
29 | VK_NONCONVERT | 無変換キー |
30 | VK_ACCEPT | IME accept |
31 | VK_MODECHANGE | IME mode change request |
32 | VK_SPACE | Spaceキー |
33 | VK_PRIOR | PageUpキー |
34 | VK_NEXT | PageDownキー |
35 | VK_END | Endキー |
36 | VK_HOME | Homeキー |
37 | VK_LEFT | ← |
38 | VK_UP | ↑ |
39 | VK_RIGHT | → |
40 | VK_DOWN | ↓ |
41 | VK_SELECT | |
42 | VK_PRINT | Printキー |
43 | VK_EXECUTE | Executeキー |
44 | VK_SNAPSHOT | Print Screenキー |
45 | VK_INSERT | Insertキー |
46 | VK_DELETE | Deleteキー |
47 | VK_HELP | Helpキー |
48 | VK_0 | 0キー |
49 | VK_1 | 1キー |
50 | VK_2 | 2キー |
51 | VK_3 | 3キー |
52 | VK_4 | 4キー |
53 | VK_5 | 5キー |
54 | VK_6 | 6キー |
55 | VK_7 | 7キー |
56 | VK_8 | 8キー |
57 | VK_9 | 9キー |
65 | VK_A | Aキー |
66 | VK_B | Bキー |
67 | VK_C | Cキー |
68 | VK_D | Dキー |
69 | VK_E | Eキー |
70 | VK_F | Fキー |
71 | VK_G | Gキー |
72 | VK_H | Hキー |
73 | VK_I | Iキー |
74 | VK_J | Jキー |
75 | VK_K | Kキー |
76 | VK_L | Lキー |
77 | VK_M | Mキー |
78 | VK_N | Nキー |
79 | VK_O | Oキー |
80 | VK_P | Pキー |
81 | VK_Q | Qキー |
82 | VK_R | Rキー |
83 | VK_S | Sキー |
84 | VK_T | Tキー |
85 | VK_U | Uキー |
86 | VK_V | Vキー |
87 | VK_W | Wキー |
88 | VK_X | Xキー |
89 | VK_Y | Yキー |
90 | VK_Z | Zキー |
91 | VK_WIN | Windowsキー |
92 | VK_START | 右Windowsキー |
92 | VK_RWIN | 右Windowsキー |
93 | VK_APPS | アプリケーションキー (右クリックメニュー) |
95 | VK_SLEEP | Sleepキー |
96 | VK_NUMPAD0 | 0キー(テンキー) |
97 | VK_NUMPAD1 | 1キー(テンキー) |
98 | VK_NUMPAD2 | 2キー(テンキー) |
99 | VK_NUMPAD3 | 3キー(テンキー) |
100 | VK_NUMPAD4 | 4キー(テンキー) |
101 | VK_NUMPAD5 | 5キー(テンキー) |
102 | VK_NUMPAD6 | 6キー(テンキー) |
103 | VK_NUMPAD7 | 7キー(テンキー) |
104 | VK_NUMPAD8 | 8キー(テンキー) |
105 | VK_NUMPAD9 | 9キー(テンキー) |
106 | VK_MULTIPLY | *キー(テンキー) |
107 | VK_ADD | +キー(テンキー) |
108 | VK_SEPARATOR | separatorキー |
109 | VK_SUBTRACT | -キー(テンキー) |
110 | VK_DECIMAL | 小数点キー |
111 | VK_DIVIDE | /キー(テンキー) |
112 | VK_F1 | F1キー |
113 | VK_F2 | F2キー |
114 | VK_F3 | F3キー |
115 | VK_F4 | F4キー |
116 | VK_F5 | F5キー |
117 | VK_F6 | F6キー |
118 | VK_F7 | F7キー |
119 | VK_F8 | F8キー |
120 | VK_F9 | F9キー |
121 | VK_F10 | F10キー |
122 | VK_F11 | F11キー |
123 | VK_F12 | F12キー |
144 | VK_NUMLOCK | NumLockキー |
145 | VK_SCROLL | ScrollLockキー |
161 | VK_RSHIFT | 右Shiftキー |
163 | VK_RCTRL | 右Ctrlキー |
165 | VK_RALT | 右Altキー |
166 | VK_BROWSER_BACK | ブラウザ戻るキー |
167 | VK_BROWSER_FORWARD | ブラウザ進むキー |
168 | VK_BROWSER_REFRESH | ブラウザ更新キー |
169 | VK_BROWSER_STOP | ブラウザ停止キー |
170 | VK_BROWSER_SEARCH | ブラウザサーチキー |
171 | VK_BROWSER_FAVORITES | ブラウザお気に入りキー |
172 | VK_BROWSER_HOME | ブラウザホームキー |
173 | VK_VOLUME_MUTE | 音量をミュートにする |
174 | VK_VOLUME_DOWN | 音量を下げる |
175 | VK_VOLUME_UP | 音量を上げる |
176 | VK_MEDIA_NEXT_TRACK | メディア次トラックキー |
177 | VK_MEDIA_PREV_TRACK | メディア前トラックキー |
178 | VK_MEDIA_STOP | メディア停止キー |
179 | VK_MEDIA_PLAY_PAUSE | メディア再生キー/メディア一時停止キー |
180 | VK_LAUNCH_MAIL | メール起動キー |
181 | VK_LAUNCH_MEDIA_SELECT | メディア選択キー |
182 | VK_LAUNCH_APP1 | 起動キー1 |
183 | VK_LAUNCH_APP2 | 起動キー2 |
186 | VK_OEM_1 | OEM定義(;:*等)キー |
187 | VK_OEM_PLUS | OEM定義(;+等)キー |
188 | VK_OEM_COMMA | OEM定義(, |
189 | VK_OEM_MINUS | OEM定義(-=等)キー |
190 | VK_OEM_PERIOD | OEM定義(.>等)キー |
191 | VK_OEM_2 | OEM定義(/?等)キー |
192 | VK_OEM_3 | OEM定義(~@`等)キー |
219 | VK_OEM_4 | OEM定義([{)キー |
220 | VK_OEM_5 | OEM定義(\|)キー |
221 | VK_OEM_6 | OEM定義(]})キー |
222 | VK_OEM_7 | OEM定義('"^~)キー |
223 | VK_OEM_8 | OEM定義キー |
233 | VK_OEM_RESET | OEM定義キー |
234 | VK_OEM_JUMP | OEM定義キー |
235 | VK_OEM_PA1 | OEM定義キー |
236 | VK_OEM_PA2 | OEM定義キー |
237 | VK_OEM_PA3 | OEM定義キー |
250 | VK_PLAY | |
251 | VK_ZOOM | |
901 | VK_RRETURN |
関連記事
- ACW (スクリプト関数)
- ウィンドウの状態を変更、またはアクティブにします。
- CHKBTN (スクリプト関数)
- ボタン類の状態を返します。
- CLKITEM (スクリプト関数)
- アイテムをクリックします。
- CTRLWIN (スクリプト関数)
- ウィンドウの状態を制御します。
- GETALLWIN (スクリプト関数)
- 全ウィンドウのIDを取得します。
- GETCTLHND (スクリプト関数)
- ボタン等、オブジェクトのハンドルを取得します。
- GETID (スクリプト関数)
- 指定したウィンドウのIDを取得します。第一引数に取得したいウィンドウのタイトル(一部でも可)を指定します。
- GETITEM (スクリプト関数)
- キャプション文字やリスト等をすべて取得します。
- GETSLIDER (スクリプト関数)
- スライダー(トラックバー、スクロールバー)の値を取得します。
- GETSTR (スクリプト関数)
- 文字列を取得します。
- HNDTOID (スクリプト関数)
- ハンドル値 をIDをに変換します。
- IDTOHND (スクリプト関数)
- IDを ハンドル値 に変換します。
- MOUSEORG (スクリプト関数)
- マウス座標を相対座標にする、 またはマウスとキー情報を直接ウィンドウへ送ります。
- SENDSTR (スクリプト関数)
- 文字列を送信します。
- SETSLIDER (スクリプト関数)
- スライダー(トラックバー、スクロールバー)の値を設定します。
- STATUS (スクリプト関数)
- ウィンドウの各種状態を返します。
- KBD (スクリプト関数)
- キーボードを操作します。
- SETHOTKEY (スクリプト関数)
- ホットキーを設定します。