Metodă (șir) ()

Fiecare cheie poate fi reprezentată de unul sau mai multe simboluri. Pentru a specifica un singur caracter pentru tastatură, utilizați caracterul însuși. De exemplu, pentru a reprezenta litera A, treceți șirul "A" la metodă. Pentru a reprezenta mai multe caractere, adăugați fiecare simbol suplimentar la cel precedent. Pentru a reprezenta literele A, B și C, specificați parametrul din "ABC".







Semnul plus (+), semnul de inserție (^), semnul procentual (%), tilda (

), iar parantezele () au o semnificație specială pentru SendKeys. Pentru a specifica unul dintre aceste caractere, ar trebui să fie închis în bretele (<>). De exemplu, pentru a specifica un semn plus, utilizați "". Pentru a specifica parantezele curbate, folosiți "" și "<>> »». Parantezele pătrate ([]) nu au prea mult sens în SendKeys. Dar trebuie să fie închise în bretele. În alte aplicații, parantezele pătrate au o semnificație specială, care poate fi critică în cazul schimbului de date dinamic (DDE).

Dacă aplicația este destinată pentru utilizare internațională cu diferite tastaturi, utilizarea metodei Trimite poate avea rezultate imprevizibile și ar trebui evitată.

Pentru a specifica caractere care nu sunt afișate când apăsați tastele corespunzătoare, cum ar fi ENTER sau TAB, și cheile care reprezintă acțiuni, nu caractere, utilizați codurile din tabelul următor.

Pentru a specifica faptul că, în combinație cu tastele SHIFT, CTRL sau ALT apăsate, sunt introduse mai multe taste în ordine, se închid codurile acestor chei în paranteze.

De exemplu, pentru a specifica când țineți apăsată tasta SHIFT, E și C sunt apăsate, utilizați "+ (EC)". Pentru a specifica, în timp ce țineți apăsată tasta SHIFT, apăsați E, urmat de C fără SHIFT, utilizați linia "+ EC".







Pentru a specifica repetarea introducerii aceleiași chei, utilizați formatul.

Trebuie să introduceți un spațiu între cheie și număr. De exemplu, apăsând butonul Săgeată spre stânga de 42 de ori; înseamnă apăsarea tastei H de 10 ori.

Deoarece nu există o metodă gestionată pentru a activa o altă aplicație, puteți utiliza această clasă în aplicația curentă sau puteți folosi propriile metode Windows, cum ar fi FindWindow și SetForegroundWindow. pentru a vă concentra asupra altor aplicații.

Clasa SendKeys a fost actualizată în .NET Framework 3.0, ceea ce a permis utilizarea acesteia în aplicațiile care rulează în Windows Vista. Siguranța îmbunătățită a Windows Vista (cunoscută sub numele de Control cont utilizator sau UAC) nu permite implementarea anterioară să funcționeze corect.

Clasa SendKeys este predispusă la probleme de-a lungul timpului cu care trebuie să se ocupe unele dezvoltatori. Implementarea actualizată este încă supusă acestor probleme, dar funcționează puțin mai repede, deci este posibil ca soluțiile existente să fie reproiectate. Clasa SendKeys încearcă mai întâi să utilizeze implementarea anterioară și, dacă aceasta nu reușește, utilizează o nouă implementare. Ca rezultat, clasa SendKeys poate funcționa diferit pe diferite sisteme de operare. În plus, dacă utilizați o nouă implementare a clasei SendKeys, metoda SendWait nu va aștepta ca mesajele să fie procesate dacă sunt trimise altui proces.

Dacă doriți să asigurați un comportament consistent al aplicației, indiferent de sistemul de operare, puteți forța clasa SendKeys să utilizeze noua implementare prin adăugarea următorului parametru al aplicației în fișierul app.config.

Pentru a forța clasa SendKeys să utilizeze implementarea anterioară, setați valoarea la "JournalHook".

Următorul exemplu de cod demonstrează utilizarea metodei Trimitere. Pentru a executa exemplul, lipiți următorul cod într-un formular numit Form1 care conține un buton numit Button1. Asigurați-vă că evenimentele de clic sunt legate de metodele de tratare a evenimentelor din acest exemplu. Proprietatea TabIndex a comenzii ar trebui să fie setată la 0. Când începeți exemplul, faceți dublu clic pe formular pentru a apela butoanele pentru evenimente clic.







Articole similare

Trimiteți-le prietenilor: