キーボードのショートカットを LotusScript で実行する
現在のビュー上のすべての文書を選択する [Ctrl + A] のようなキーボードのショートカットを LotusScript で実行することは可能でしょうか?
これは、Windows の user32.dll を使用すれば、LotusScript から実行することが可能です。
user32.dll を呼び出した上で、Keybd_event サブルーチン内で以下を定義します。
- 最初のパラメータで送信するキーを定義する
- 3 番目のパラメータでアクションを定義する(0=keyDown、2=keyUp)
- 2 番目と 4 番目のパラメータは使用しないので、0 を入力する
下記のサンプルは、[Ctrl + A] の実行で、ビュー上ですべての文書を選択するのを LotusScript から実行します。[Ctrl + A] キーを押すには、以下の 4 つのキーボードイベントを実行する必要があります。
- [Ctrl] キーを押す
- [A] キーを押す
- [A] キーを放す
- [Ctrl] キーを放す
キーの定義は、[Ctrl] が 17 で、[A] が 65 です。
------------------
(Declarations)
Declare Sub keybd_event Lib "user32.dll" (Byval bVk As Integer, Byval bScan As Integer, Byval dwFlags As Integer, Byval dwExtraInfo As Integer)
Sub Click(Source As Button)
keybd_event 17,0,0,0 ' Ctrl key down
keybd_event 65,0,0,0 ' A down
keybd_event 65,0,2,0 ' A up
keybd_event 17,0,2,0 ' Ctrl key up
End Sub
------------------
キーの定義は以下のようになります。
Tab: 9
Enter: 13
Shift: 16
Ctrl: 17
Alt: 18
←: 37
↑: 38
→: 39
↓: 40
A ~ Z: 65 ~ 90
これは、Windows の user32.dll を使用すれば、LotusScript から実行することが可能です。
user32.dll を呼び出した上で、Keybd_event サブルーチン内で以下を定義します。
- 最初のパラメータで送信するキーを定義する
- 3 番目のパラメータでアクションを定義する(0=keyDown、2=keyUp)
- 2 番目と 4 番目のパラメータは使用しないので、0 を入力する
下記のサンプルは、[Ctrl + A] の実行で、ビュー上ですべての文書を選択するのを LotusScript から実行します。[Ctrl + A] キーを押すには、以下の 4 つのキーボードイベントを実行する必要があります。
- [Ctrl] キーを押す
- [A] キーを押す
- [A] キーを放す
- [Ctrl] キーを放す
キーの定義は、[Ctrl] が 17 で、[A] が 65 です。
------------------
(Declarations)
Declare Sub keybd_event Lib "user32.dll" (Byval bVk As Integer, Byval bScan As Integer, Byval dwFlags As Integer, Byval dwExtraInfo As Integer)
Sub Click(Source As Button)
keybd_event 17,0,0,0 ' Ctrl key down
keybd_event 65,0,0,0 ' A down
keybd_event 65,0,2,0 ' A up
keybd_event 17,0,2,0 ' Ctrl key up
End Sub
------------------
キーの定義は以下のようになります。
Tab: 9
Enter: 13
Shift: 16
Ctrl: 17
Alt: 18
←: 37
↑: 38
→: 39
↓: 40
A ~ Z: 65 ~ 90
コメント
Re: キーボードのショートカットを LotusScript で実行する
keybd_event
http://msdn.microsoft.com/ja-jp/library/cc364822.aspx
ご参考まで。
2012-09-10 20:11 Tsuguo URL 編集
Re: Re: キーボードのショートカットを LotusScript で実行する
確認してみます。
2012-09-14 13:57 中島 基晶 URL 編集