Udostępnij za pośrednictwem


Keyboard.SendKeys Metoda

Definicja

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ż

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ż

Dotyczy