Keyboard.SendKeys メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
キーボードに入力されているかのように、1 つ以上のキーストロークをアクティブ ウィンドウに送信します。
オーバーロード
| 名前 | 説明 |
|---|---|
| SendKeys(String) |
キーボードに入力されているかのように、1 つ以上のキーストロークをアクティブ ウィンドウに送信します。 |
| SendKeys(String, Boolean) |
キーボードに入力されているかのように、1 つ以上のキーストロークをアクティブ ウィンドウに送信します。 |
SendKeys(String)
- ソース:
- Keyboard.vb
- ソース:
- Keyboard.vb
- ソース:
- Keyboard.vb
- ソース:
- Keyboard.vb
- ソース:
- Keyboard.vb
キーボードに入力されているかのように、1 つ以上のキーストロークをアクティブ ウィンドウに送信します。
public:
void SendKeys(System::String ^ keys);
public void SendKeys(string keys);
member this.SendKeys : string -> unit
Public Sub SendKeys (keys As String)
パラメーター
- keys
- String
送信するキーを定義する String 。
例外
ユーザーに必要なアクセス許可がない部分信頼の状況が存在します。
例
この例では、 My.Computer.Keyboard.SendKeys メソッドを使用して、 Shell メソッドによって開始された外部アプリケーション (メモ帳アプリケーション) にキーストロークを送信します。
Dim ProcID As Integer
' Start the Notepad application, and store the process id.
ProcID = Shell("NOTEPAD.EXE", AppWinStyle.NormalFocus)
' Activate the Notepad application.
AppActivate(ProcID)
' Send the keystrokes to the Notepad application.
My.Computer.Keyboard.SendKeys("I ", True)
My.Computer.Keyboard.SendKeys("♥", True)
My.Computer.Keyboard.SendKeys(" Visual Basic!", True)
' The sentence I ♥ Visual Basic! is printed on Notepad.
要求されたプロセス識別子を持つアプリケーションが見つからない場合、 ArgumentException 例外が発生します。
Shell メソッドの呼び出しには、完全信頼 (SecurityException クラス) が必要です。
注釈
My.Computer.Keyboard.SendKeys メソッドは、SendメソッドやSendWait メソッドと同様の機能を提供します。
wait引数は、アプリケーションを続行する前に他のアプリケーションを終了する必要がある場合に便利です。
Note
別のアプリケーションをアクティブ化するマネージド メソッドがないため、現在のアプリケーション内でこのクラスを使用するか、キーを送信するウィンドウを手動で選択するか、FindWindow や SetForegroundWindow などの Windows API メソッドを使用して、他のアプリケーションに強制的に集中させることができます。 詳細については、「Walkthrough: calling Windows API」を参照してください。
keys引数は、任意の 1 つのキー、または Alt、Ctrl、または Shift キー (またはそれらのキーの任意の組み合わせ) と組み合わせた任意のキーを指定できます。 各キーは、文字 "a" の a や Enter キーの {ENTER} など、1 つ以上の文字で表されます。
キーと Shift キーを組み合わせるには、キー コードの前に + (プラス記号) を付けます。 キーと Ctrl キーを組み合わせるには、キー コードの前に ^ (キャレット) を付けます。 キーと Alt キーを組み合わせるには、キー コードの前に % (パーセント記号) を付けます。 繰り返しキーを指定するには、フォーム {キー番号}を使用します。
キーと数値の間にスペースを入れる必要があります。 たとえば、 {LEFT 42} は "左方向キーを 42 回押す" を意味し、 {h 10} は "h キーを 10 回押す" ことを意味します。
次の表に、対応するキー (Enter や TAB など) を押したときに表示されない文字を指定するために使用できるコードを示します。
| Key | Code |
|---|---|
| BackSpace | {BACKSPACE} または {BS} |
| BREAK | {BREAK} |
| CapsLock | {CAPSLOCK} |
| CLEAR | {CLEAR} |
| DELETE | {DELETE} または {DEL} |
| ↓ | {DOWN} |
| 終了 | {END} |
| Enter (テンキー) | {ENTER} |
| エンター | ~ |
| ESC | {ESCAPE} または {ESC} |
| HELP | {HELP} |
| ホーム | {HOME} |
| イン | {INSERT} |
| 左矢印 | {LEFT} |
| NumLock | {NUMLOCK} |
| ページダウン | {PGDN} |
| ページアップ | {PGUP} |
| RETURN | {RETURN} |
| 右矢印 | {RIGHT} |
| ScrollLock | {SCROLLLOCK} |
| Tab | {TAB} |
| 上矢印 | {UP} |
| F1 ~ F15 | {F1} から {F15} |
プロジェクトの種類別の可用性
| プロジェクト タイプ | 在庫有り |
|---|---|
| Windows アプリケーション | Yes |
| クラス ライブラリ | Yes |
| コンソール アプリケーション | Yes |
| Windows コントロール ライブラリ | Yes |
| Web コントロール ライブラリ | いいえ |
| Windows サービス | Yes |
| ウェブサイト | いいえ |
こちらもご覧ください
- Computer
- Send(String)
- SendWait(String)
- オブジェクト (Visual Basic)
- キーボードへのアクセス (Visual Basic)
- チュートリアル: Windows API の呼び出し
適用対象
SendKeys(String, Boolean)
- ソース:
- Keyboard.vb
- ソース:
- Keyboard.vb
- ソース:
- Keyboard.vb
- ソース:
- Keyboard.vb
- ソース:
- Keyboard.vb
キーボードに入力されているかのように、1 つ以上のキーストロークをアクティブ ウィンドウに送信します。
public:
void SendKeys(System::String ^ keys, bool wait);
public void SendKeys(string keys, bool wait);
member this.SendKeys : string * bool -> unit
Public Sub SendKeys (keys As String, wait As Boolean)
パラメーター
- keys
- String
送信するキーを定義する String 。
- wait
- Boolean
このフィールドは省略可能です。 アプリケーションが続行する前にキーストロークが処理されるのを待つかどうかを指定する Boolean 。 既定では True です。
例外
ユーザーに必要なアクセス許可がない部分信頼の状況が存在します。
例
この例では、 My.Computer.Keyboard.SendKeys メソッドを使用して、 Shell メソッドによって開始された外部アプリケーション (メモ帳アプリケーション) にキーストロークを送信します。
Dim ProcID As Integer
' Start the Notepad application, and store the process id.
ProcID = Shell("NOTEPAD.EXE", AppWinStyle.NormalFocus)
' Activate the Notepad application.
AppActivate(ProcID)
' Send the keystrokes to the Notepad application.
My.Computer.Keyboard.SendKeys("I ", True)
My.Computer.Keyboard.SendKeys("♥", True)
My.Computer.Keyboard.SendKeys(" Visual Basic!", True)
' The sentence I ♥ Visual Basic! is printed on Notepad.
要求されたプロセス識別子を持つアプリケーションが見つからない場合、 ArgumentException 例外が発生します。
Shell メソッドの呼び出しには、完全信頼 (SecurityException クラス) が必要です。
注釈
My.Computer.Keyboard.SendKeys メソッドは、SendメソッドやSendWait メソッドと同様の機能を提供します。
wait引数は、アプリケーションを続行する前に他のアプリケーションを終了する必要がある場合に便利です。
Note
別のアプリケーションをアクティブ化するマネージド メソッドがないため、現在のアプリケーション内でこのクラスを使用するか、キーを送信するウィンドウを手動で選択するか、FindWindow や SetForegroundWindow などの Windows API メソッドを使用して、他のアプリケーションに強制的に集中させることができます。 詳細については、「Walkthrough: calling Windows API」を参照してください。
keys引数は、任意の 1 つのキー、または Alt、Ctrl、または Shift キー (またはそれらのキーの任意の組み合わせ) と組み合わせた任意のキーを指定できます。 各キーは、文字 "a" の a や Enter キーの {ENTER} など、1 つ以上の文字で表されます。
キーと Shift キーを組み合わせるには、キー コードの前に + (プラス記号) を付けます。 キーと Ctrl キーを組み合わせるには、キー コードの前に ^ (キャレット) を付けます。 キーと Alt キーを組み合わせるには、キー コードの前に % (パーセント記号) を付けます。 繰り返しキーを指定するには、フォーム {キー番号}を使用します。
キーと数値の間にスペースを入れる必要があります。 たとえば、 {LEFT 42} は "左方向キーを 42 回押す" を意味し、 {h 10} は "h キーを 10 回押す" ことを意味します。
次の表に、対応するキー (Enter や TAB など) を押したときに表示されない文字を指定するために使用できるコードを示します。
| Key | Code |
|---|---|
| BackSpace | {BACKSPACE} または {BS} |
| BREAK | {BREAK} |
| CapsLock | {CAPSLOCK} |
| CLEAR | {CLEAR} |
| DELETE | {DELETE} または {DEL} |
| ↓ | {DOWN} |
| 終了 | {END} |
| Enter (テンキー) | {ENTER} |
| エンター | ~ |
| ESC | {ESCAPE} または {ESC} |
| HELP | {HELP} |
| ホーム | {HOME} |
| イン | {INSERT} |
| 左矢印 | {LEFT} |
| NumLock | {NUMLOCK} |
| ページダウン | {PGDN} |
| ページアップ | {PGUP} |
| RETURN | {RETURN} |
| 右矢印 | {RIGHT} |
| ScrollLock | {SCROLLLOCK} |
| Tab | {TAB} |
| 上矢印 | {UP} |
| F1 ~ F15 | {F1} から {F15} |
プロジェクトの種類別の可用性
| プロジェクト タイプ | 在庫有り |
|---|---|
| Windows アプリケーション | Yes |
| クラス ライブラリ | Yes |
| コンソール アプリケーション | Yes |
| Windows コントロール ライブラリ | Yes |
| Web コントロール ライブラリ | いいえ |
| Windows サービス | Yes |
| ウェブサイト | いいえ |
こちらもご覧ください
- Computer
- Send(String)
- SendWait(String)
- オブジェクト (Visual Basic)
- キーボードへのアクセス (Visual Basic)
- チュートリアル: Windows API の呼び出し