Keyboard.SendKeys Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wysyła co najmniej jeden naciśnięcie klawiszy do aktywnego okna, tak jak w przypadku wpisywania na klawiaturze.
Przeciążenia
SendKeys(String) |
Wysyła co najmniej jedno naciśnięcie klawiszy do aktywnego okna, tak jak w przypadku wpisywania na klawiaturze. |
SendKeys(String, Boolean) |
Wysyła co najmniej jedno naciśnięcie klawiszy do aktywnego okna, tak jak w przypadku wpisywania na klawiaturze. |
SendKeys(String)
Wysyła co najmniej jedno naciśnięcie klawiszy do aktywnego okna, tak jak w przypadku wpisywania na klawiaturze.
public:
void SendKeys(System::String ^ keys);
public void SendKeys (string keys);
member this.SendKeys : string -> unit
Public Sub SendKeys (keys As String)
Parametry
- keys
- String
Element String
definiujący klucze do wysłania.
Wyjątki
Istnieje sytuacja częściowego zaufania, w której użytkownik nie ma niezbędnych uprawnień.
Przykłady
W tym przykładzie użyto My.Computer.Keyboard.SendKeys
metody do wysyłania naciśnięć klawiszy do aplikacji zewnętrznej, aplikacji Notatnika, uruchomionej przez metodę 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.
Wyjątek ArgumentException jest zgłaszany, jeśli nie można odnaleźć aplikacji z żądanym identyfikatorem procesu.
Wywołanie Shell metody wymaga pełnego zaufania (SecurityException klasa ).
Uwagi
Metoda My.Computer.Keyboard.SendKeys
udostępnia funkcje podobne do Send metod i SendWait .
Argument wait
jest przydatny, jeśli inna aplikacja musi zakończyć się, zanim aplikacja będzie mogła kontynuować.
Uwaga
Ponieważ nie ma metody zarządzanej do aktywowania innej aplikacji, możesz użyć tej klasy w bieżącej aplikacji, ręcznie wybrać okno, aby wysłać klucze do lub użyć metod interfejsu API systemu Windows, takich jak FindWindow
i SetForegroundWindow
, aby wymusić skupienie się na innych aplikacjach. Aby uzyskać więcej informacji, zobacz Przewodnik: wywoływanie interfejsów API systemu Windows.
Argument keys
może określać dowolny pojedynczy klucz lub dowolny klawisz w połączeniu z klawiszami ALT, CTRL lub SHIFT (lub dowolną kombinacją tych klawiszy). Każdy klucz jest reprezentowany przez co najmniej jeden znak, taki jak a
dla znaku "a" lub {ENTER}
klawisz ENTER.
Aby połączyć klucz z klawiszem SHIFT, poprzedzić kod klucza znakiem +
(znak plus). Aby połączyć klawisz za pomocą klawisza CTRL, przed kodem klawisza za pomocą ^
klawisza (karetki). Aby połączyć klucz z klawiszem ALT, poprzedzić kod klucza znakiem %
(znak procentu). Aby określić powtarzające się klucze, użyj numeru}
klucza formularza{
. Musisz umieścić spację między kluczem a liczbą. Na przykład {LEFT 42}
oznacza "naciśnij klawisz STRZAŁKA W LEWO 42 razy"; {h 10}
oznacza "naciśnij klawisz "h" 10 razy.
W poniższej tabeli wymieniono kody, których można użyć do określania znaków, które nie są wyświetlane po naciśnięciu odpowiedniego klawisza (na przykład ENTER lub TAB).
Klucz | Kod |
---|---|
BACKSPACE | {BACKSPACE} lub {BS} |
PRZERWY | {BREAK} |
CAPS LOCK | {CAPSLOCK} |
WYCZYŚĆ | {CLEAR} |
DELETE | {DELETE} lub {DEL} |
STRZAŁKA W DÓŁ | {DOWN} |
END | {END} |
ENTER (klawiatura liczbowa) | {ENTER} |
ENTER | ~ |
ESC | {ESCAPE} lub {ESC} |
POMOC | {HELP} |
STRONA GŁÓWNA | {HOME} |
DODATKI | {INSERT} |
STRZAŁKA W LEWO | {LEFT} |
BLOKADA NUM | {NUMLOCK} |
PAGE DOWN | {PGDN} |
PAGE UP | {PGUP} |
ZWRACA | {RETURN} |
STRZAŁKA W PRAWO | {RIGHT} |
BLOKADA PRZEWIJANIA | {SCROLLLOCK} |
TAB | {TAB} |
STRZAŁKA W GÓRĘ | {UP} |
Od F1 do F15 | Od {F1} do {F15} |
Dostępność według typu projektu
Project type (Typ projektu) | Dostępne |
---|---|
Aplikacja systemu Windows | Tak |
Biblioteka klas | Tak |
Aplikacja konsoli | Tak |
Biblioteka kontrolek systemu Windows | Tak |
Biblioteka formantów sieci Web | Nie |
Usługa systemu Windows | Tak |
Witryna sieci Web | Nie |
Zobacz też
- Computer
- Send(String)
- SendWait(String)
- Obiekty (Visual Basic)
- Uzyskiwanie dostępu do klawiatury (Visual Basic)
- Przewodnik: Wywoływanie interfejsów API systemu Windows
Dotyczy
SendKeys(String, Boolean)
Wysyła co najmniej jeden naciśnięcie klawiszy do aktywnego okna, tak jak w przypadku wpisywania na klawiaturze.
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)
Parametry
- keys
- String
Element String
definiujący klucze do wysłania.
- wait
- Boolean
Opcjonalny. Element Boolean
określający, czy poczekać na przetworzenie naciśnięć klawiszy przed kontynuowaniem aplikacji. True
domyślnie.
Wyjątki
Istnieje sytuacja częściowego zaufania, w której użytkownik nie ma niezbędnych uprawnień.
Przykłady
W tym przykładzie użyto My.Computer.Keyboard.SendKeys
metody do wysyłania naciśnięć klawiszy do aplikacji zewnętrznej, aplikacji Notatnika, uruchomionej przez metodę 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.
Wyjątek ArgumentException jest zgłaszany, jeśli nie można odnaleźć aplikacji z żądanym identyfikatorem procesu.
Wywołanie Shell metody wymaga pełnego zaufania (SecurityException klasa ).
Uwagi
Metoda My.Computer.Keyboard.SendKeys
udostępnia funkcje podobne do Send metod i SendWait .
Argument wait
jest przydatny, jeśli inna aplikacja musi zakończyć się, zanim aplikacja będzie mogła kontynuować.
Uwaga
Ponieważ nie ma metody zarządzanej do aktywowania innej aplikacji, możesz użyć tej klasy w bieżącej aplikacji, ręcznie wybrać okno, aby wysłać klucze do lub użyć metod interfejsu API systemu Windows, takich jak FindWindow
i SetForegroundWindow
, aby wymusić skupienie się na innych aplikacjach. Aby uzyskać więcej informacji, zobacz Przewodnik: wywoływanie interfejsów API systemu Windows.
Argument keys
może określać dowolny pojedynczy klucz lub dowolny klawisz połączony z ALT, CTRL lub SHIFT (lub dowolną kombinacją tych klawiszy). Każdy klucz jest reprezentowany przez co najmniej jeden znak, taki jak a
znak "a" lub {ENTER}
klawisz ENTER.
Aby połączyć klucz z klawiszem SHIFT, poprzedzaj kod klucza znakiem +
(plus). Aby połączyć klawisz z klawiszem CTRL, poprzedzaj kod klawisza ^
(karetki). Aby połączyć klucz z alt, poprzedzaj kod klucza znakiem %
(znak procentu). Aby określić powtarzające się klucze, użyj numeru}
klucza formularza{
. Musisz umieścić spację między kluczem a liczbą. Na przykład {LEFT 42}
oznacza "naciśnięcie klawisza STRZAŁKA W LEWO 42 razy"; {h 10}
oznacza "naciśnij klawisz "h" 10 razy.
W poniższej tabeli wymieniono kody, których można użyć do określania znaków, które nie są wyświetlane po naciśnięciu odpowiedniego klawisza (na przykład ENTER lub TAB).
Klucz | Kod |
---|---|
BACKSPACE | {BACKSPACE} lub {BS} |
PRZERWY | {BREAK} |
CAPS LOCK | {CAPSLOCK} |
WYCZYŚĆ | {CLEAR} |
DELETE | {DELETE} lub {DEL} |
STRZAŁKA W DÓŁ | {DOWN} |
END | {END} |
ENTER (klawiatura liczbowa) | {ENTER} |
ENTER | ~ |
ESC | {ESCAPE} lub {ESC} |
POMOC | {HELP} |
STRONA GŁÓWNA | {HOME} |
DODATKI | {INSERT} |
STRZAŁKA W LEWO | {LEFT} |
BLOKADA NUM | {NUMLOCK} |
PAGE DOWN | {PGDN} |
PAGE UP | {PGUP} |
ZWRACA | {RETURN} |
STRZAŁKA W PRAWO | {RIGHT} |
BLOKADA PRZEWIJANIA | {SCROLLLOCK} |
TAB | {TAB} |
STRZAŁKA W GÓRĘ | {UP} |
Od F1 do F15 | Od {F1} do {F15} |
Dostępność według typu projektu
Project type (Typ projektu) | Dostępne |
---|---|
Aplikacja systemu Windows | Tak |
Biblioteka klas | Tak |
Aplikacja konsoli | Tak |
Biblioteka kontrolek systemu Windows | Tak |
Biblioteka formantów sieci Web | Nie |
Usługa systemu Windows | Tak |
Witryna sieci Web | Nie |
Zobacz też
- Computer
- Send(String)
- SendWait(String)
- Obiekty (Visual Basic)
- Uzyskiwanie dostępu do klawiatury (Visual Basic)
- Przewodnik: Wywoływanie interfejsów API systemu Windows