Keyboard.SendKeys Método

Definição

Envia um ou mais pressionamentos de teclas para a janela ativa, como se fosse digitado no teclado.

Sobrecargas

Nome Description
SendKeys(String)

Envia um ou mais pressionamentos de teclas para a janela ativa, como se fosse digitado no teclado.

SendKeys(String, Boolean)

Envia um ou mais pressionamentos de teclas para a janela ativa, como se fosse digitado no teclado.

SendKeys(String)

Envia um ou mais pressionamentos de teclas para a janela ativa, como se fosse digitado no teclado.

public:
 void SendKeys(System::String ^ keys);
public void SendKeys(string keys);
member this.SendKeys : string -> unit
Public Sub SendKeys (keys As String)

Parâmetros

keys
String

Um String que define as chaves a serem enviadas.

Exceções

Existe uma situação de confiança parcial na qual o usuário não tem as permissões necessárias.

Exemplos

Este exemplo usa o My.Computer.Keyboard.SendKeys método para enviar pressionamentos de teclas para um aplicativo externo, o aplicativo bloco de notas, iniciado pelo Shell método.

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.

Uma ArgumentException exceção será gerada se um aplicativo com o identificador de processo solicitado não puder ser encontrado.

A chamada para o Shell método requer confiança total (SecurityException classe).

Comentários

O My.Computer.Keyboard.SendKeys método fornece funcionalidade semelhante aos métodos e SendWait aos Send métodos.

O wait argumento será útil se o outro aplicativo precisar ser concluído antes que seu aplicativo possa continuar.

Observação

Como não há nenhum método gerenciado para ativar outro aplicativo, você pode usar essa classe no aplicativo atual, selecionar manualmente a janela para a qual enviar as chaves ou usar métodos de API Windows, como FindWindow e SetForegroundWindow, para forçar o foco em outros aplicativos. Para obter mais informações, consulte Walkthrough: Chamando APIs Windows.

O keys argumento pode especificar qualquer chave única ou qualquer chave combinada com ALT, CTRL ou SHIFT (ou qualquer combinação dessas chaves). Cada chave é representada por um ou mais caracteres, como a para o caractere "a" ou {ENTER} para a chave ENTER.

Para combinar uma chave com SHIFT, preceda o código de chave com + (sinal de adição). Para combinar uma chave com CTRL, preceda o código de chave com ^ (caret). Para combinar uma chave com ALT, preceda o código de chave com % (sinal de porcentagem). Para especificar chaves repetidas, use o número} da chave de formulário{. Você deve colocar um espaço entre chave e número. Por exemplo, {LEFT 42} significa "pressione a tecla SETA PARA A ESQUERDA 42 vezes"; {h 10} significa "pressione 'h' 10 vezes".

A tabela a seguir lista os códigos que podem ser usados para especificar caracteres que não são exibidos quando você pressiona a tecla correspondente (como ENTER ou TAB).

Key Code
BACKSPACE {BACKSPACE} ou {BS}
BREAK {BREAK}
CAPS LOCK {CAPSLOCK}
CLEAR {CLEAR}
DELETE {DELETE} ou {DEL}
SETA PARA BAIXO {DOWN}
FIM {END}
ENTER (teclado numérico) {ENTER}
ENTRAR ~
ESC {ESCAPE} ou {ESC}
HELP {HELP}
HOME {HOME}
INS {INSERT}
SETA PARA A ESQUERDA {LEFT}
BLOQUEIO NUM {NUMLOCK}
PÁGINA ABAIXO {PGDN}
PÁGINA ACIMA {PGUP}
RETURN {RETURN}
SETA PARA A DIREITA {RIGHT}
BLOQUEIO DE ROLAGEM {SCROLLLOCK}
TAB {TAB}
SETA PARA CIMA {UP}
F1 a F15 {F1} até {F15}

Disponibilidade por tipo de projeto

Tipo de projeto Available
Aplicativo do Windows Yes
Biblioteca de Classes Yes
Aplicativo de console Yes
Biblioteca de Controle do Windows Yes
Biblioteca de Controles da Web Não
Serviço do Windows Yes
Site da web Não

Confira também

Aplica-se a

SendKeys(String, Boolean)

Envia um ou mais pressionamentos de teclas para a janela ativa, como se fosse digitado no teclado.

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)

Parâmetros

keys
String

Um String que define as chaves a serem enviadas.

wait
Boolean

Optional. Um Boolean que especifica se os pressionamentos de teclas devem ou não ser processados antes que o aplicativo continue. True por padrão.

Exceções

Existe uma situação de confiança parcial na qual o usuário não tem as permissões necessárias.

Exemplos

Este exemplo usa o My.Computer.Keyboard.SendKeys método para enviar pressionamentos de teclas para um aplicativo externo, o aplicativo bloco de notas, iniciado pelo Shell método.

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.

Uma ArgumentException exceção será gerada se um aplicativo com o identificador de processo solicitado não puder ser encontrado.

A chamada para o Shell método requer confiança total (SecurityException classe).

Comentários

O My.Computer.Keyboard.SendKeys método fornece funcionalidade semelhante aos métodos e SendWait aos Send métodos.

O wait argumento será útil se o outro aplicativo precisar ser concluído antes que seu aplicativo possa continuar.

Observação

Como não há nenhum método gerenciado para ativar outro aplicativo, você pode usar essa classe no aplicativo atual, selecionar manualmente a janela para a qual enviar as chaves ou usar métodos de API Windows, como FindWindow e SetForegroundWindow, para forçar o foco em outros aplicativos. Para obter mais informações, consulte Walkthrough: Chamando APIs Windows.

O keys argumento pode especificar qualquer chave única ou qualquer chave combinada com ALT, CTRL ou SHIFT (ou qualquer combinação dessas chaves). Cada chave é representada por um ou mais caracteres, como a para o caractere "a" ou {ENTER} para a chave ENTER.

Para combinar uma chave com SHIFT, preceda o código de chave com + (sinal de adição). Para combinar uma chave com CTRL, preceda o código de chave com ^ (caret). Para combinar uma chave com ALT, preceda o código de chave com % (sinal de porcentagem). Para especificar chaves repetidas, use o número} da chave de formulário{. Você deve colocar um espaço entre chave e número. Por exemplo, {LEFT 42} significa "pressione a tecla SETA PARA A ESQUERDA 42 vezes"; {h 10} significa "pressione 'h' 10 vezes".

A tabela a seguir lista os códigos que podem ser usados para especificar caracteres que não são exibidos quando você pressiona a tecla correspondente (como ENTER ou TAB).

Key Code
BACKSPACE {BACKSPACE} ou {BS}
BREAK {BREAK}
CAPS LOCK {CAPSLOCK}
CLEAR {CLEAR}
DELETE {DELETE} ou {DEL}
SETA PARA BAIXO {DOWN}
FIM {END}
ENTER (teclado numérico) {ENTER}
ENTRAR ~
ESC {ESCAPE} ou {ESC}
HELP {HELP}
HOME {HOME}
INS {INSERT}
SETA PARA A ESQUERDA {LEFT}
BLOQUEIO NUM {NUMLOCK}
PÁGINA ABAIXO {PGDN}
PÁGINA ACIMA {PGUP}
RETURN {RETURN}
SETA PARA A DIREITA {RIGHT}
BLOQUEIO DE ROLAGEM {SCROLLLOCK}
TAB {TAB}
SETA PARA CIMA {UP}
F1 a F15 {F1} até {F15}

Disponibilidade por tipo de projeto

Tipo de projeto Available
Aplicativo do Windows Yes
Biblioteca de Classes Yes
Aplicativo de console Yes
Biblioteca de Controle do Windows Yes
Biblioteca de Controles da Web Não
Serviço do Windows Yes
Site da web Não

Confira também

Aplica-se a