Keyboard.SendKeys Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Отправляет сведения о нажатии одной или нескольких клавиш в активное окно как при вводе с клавиатуры.
Перегрузки
| SendKeys(String) |
Отправляет сведения о нажатии одной или нескольких клавиш в активное окно как при вводе с клавиатуры. |
| SendKeys(String, Boolean) |
Отправляет сведения о нажатии одной или нескольких клавиш в активное окно как при вводе с клавиатуры. |
SendKeys(String)
Отправляет сведения о нажатии одной или нескольких клавиш в активное окно как при вводе с клавиатуры.
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 удобен, если другое приложение должно завершить работу, прежде чем приложение сможет продолжить работу.
Примечание
Так как нет управляемого метода для активации другого приложения, вы можете использовать этот класс в текущем приложении, вручную выбрать окно для отправки ключей, или использовать методы API Windows, такие как FindWindow и SetForegroundWindow, для принудительного фокусировки на других приложениях. Дополнительные сведения см. в разделе Пошаговое руководство. Вызов API Windows.
Аргумент keys может указывать любую отдельную клавишу или любую клавишу в сочетании с ALT, CTRL или SHIFT (или любое сочетание этих клавиш). Каждая клавиша представлена одним или несколькими символами, например a для символа "a" или {ENTER} для клавиши ВВОД.
Чтобы объединить ключ с SHIFT, перед кодом + ключа следует использовать знак "плюс"). Чтобы объединить клавишу с CTRL, перед кодом клавиши ^ следует использовать (курсор). Чтобы объединить ключ с ALT, предшествуйте коду ключа ( % знак процента). Чтобы указать повторяющиеся ключи, используйте номер} ключа формы{. Необходимо поместить пробел между ключом и числом. Например, {LEFT 42} означает "нажмите клавишу СТРЕЛКА ВЛЕВО 42 раза", {h 10} а означает "нажмите "h" 10 раз".
В следующей таблице перечислены коды, которые можно использовать для указания символов, которые не отображаются при нажатии соответствующей клавиши (например, ВВОД или TAB).
| Ключ | Код |
|---|---|
| BACKSPACE | {BACKSPACE} или {BS} |
| BREAK | {BREAK} |
| CAPS LOCK | {CAPSLOCK} |
| CLEAR | {CLEAR} |
| DELETE | {DELETE} или {DEL} |
| СТРЕЛКА ВНИЗ | {DOWN} |
| END | {END} |
| ВВОД (цифровая клавиатура) | {ВВОД} |
| ВВОД | ~ |
| ESC | {ESCAPE} или {ESC} |
| HELP | {HELP} |
| HOME | {HOME} |
| INS | {INSERT} |
| СТРЕЛКА ВЛЕВО | {LEFT} |
| NUM LOCK | {NUMLOCK} |
| PAGE DOWN | {PGDN} |
| PAGE UP | {PGUP} |
| RETURN | {RETURN} |
| СТРЕЛКА ВПРАВО | {RIGHT} |
| SCROLL LOCK | {SCROLLLOCK} |
| TAB | {TAB} |
| СТРЕЛКА ВВЕРХ | {UP} |
| F1–F15 | {F1} по {F15} |
Доступность по типу проекта
| Тип проекта | Доступно |
|---|---|
| Приложение Windows | Да |
| Библиотека классов | Да |
| Консольное приложение | Да |
| Библиотека элементов управления Windows | Да |
| Библиотека веб-элементов управления | Нет |
| Службы Windows | Да |
| Веб-сайт | Нет |
См. также раздел
- Computer
- Send(String)
- SendWait(String)
- Объекты (Visual Basic)
- Доступ к клавиатуре (Visual Basic)
- Пошаговое руководство. Вызов API Windows
Применяется к
SendKeys(String, Boolean)
Отправляет сведения о нажатии одной или нескольких клавиш в активное окно как при вводе с клавиатуры.
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 удобен, если другое приложение должно завершить работу, прежде чем приложение сможет продолжить работу.
Примечание
Так как нет управляемого метода для активации другого приложения, можно либо использовать этот класс в текущем приложении, вручную выбрать окно для отправки ключей, либо использовать методы API Windows, такие как FindWindow и SetForegroundWindow, чтобы принудительно сосредоточиться на других приложениях. Дополнительные сведения см. в разделе Пошаговое руководство. Вызов API Windows.
Аргумент keys может указать любую отдельную клавишу или любую клавишу в сочетании с ALT, CTRL или SHIFT (или любую комбинацию этих клавиш). Каждая клавиша представлена одним или несколькими символами, например a для символа "a" или {ENTER} клавиши ВВОД.
Чтобы объединить ключ с shift, перед кодом + ключа следует использовать знак "плюс". Чтобы совместить клавишу CTRL, предшествуйте коду клавиши ^ (курсор). Чтобы объединить ключ с ALT, перед кодом ключа следует % использовать (знак процента). Чтобы указать повторяющиеся ключи, используйте номер} ключа формы{. Необходимо поместить пробел между ключом и числом. Например, {LEFT 42} означает "нажмите клавишу СТРЕЛКА ВЛЕВО 42 раза"; {h 10} означает "нажмите "h" 10 раз".
В следующей таблице перечислены коды, которые можно использовать для указания символов, которые не отображаются при нажатии соответствующей клавиши (например, ВВОД или TAB).
| Ключ | Код |
|---|---|
| BACKSPACE | {BACKSPACE} или {BS} |
| BREAK | {BREAK} |
| CAPS LOCK | {CAPSLOCK} |
| CLEAR | {CLEAR} |
| DELETE | {DELETE} или {DEL} |
| СТРЕЛКА ВНИЗ | {DOWN} |
| END | {END} |
| ВВОД (цифровая клавиатура) | {ВВОД} |
| ВВОД | ~ |
| ESC | {ESCAPE} или {ESC} |
| HELP | {HELP} |
| HOME | {HOME} |
| INS | {INSERT} |
| СТРЕЛКА ВЛЕВО | {LEFT} |
| NUM LOCK | {NUMLOCK} |
| PAGE DOWN | {PGDN} |
| PAGE UP | {PGUP} |
| RETURN | {RETURN} |
| СТРЕЛКА ВПРАВО | {RIGHT} |
| SCROLL LOCK | {SCROLLLOCK} |
| TAB | {TAB} |
| СТРЕЛКА ВВЕРХ | {UP} |
| От F1 до F15 | с {F1} по {F15} |
Доступность по типу проекта
| Тип проекта | Доступно |
|---|---|
| Приложение Windows | Да |
| Библиотека классов | Да |
| Консольное приложение | Да |
| Библиотека элементов управления Windows | Да |
| Библиотека веб-элементов управления | Нет |
| Службы Windows | Да |
| Веб-сайт | Нет |
См. также раздел
- Computer
- Send(String)
- SendWait(String)
- Объекты (Visual Basic)
- Доступ к клавиатуре (Visual Basic)
- Пошаговое руководство. Вызов API Windows