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