Come utilizzare TTouchKeyboard in Delphi, in modo che possa inviare sequenze di tasti ad altri programmi. Ad esempio, voglio digitare la password in un browser utilizzando il componente TTouchKeyboard. Non ho idea di come rendere il focus del browser mentre clicco sulla mia tastiera.TTouchKeyboard: invia la sequenza di tasti ad un altro programma?
5
A
risposta
10
TTouchKeyboard
invia i tasti per il controllo corrente concentrata: quindi se avete un TEdit
con la messa a fuoco , il TEdit riceveranno la chiave ...
È possibile creare un modulo che contiene il TTouchKeyboard
e aggiungere questa procedura:
protected
procedure CreateParams(var Params: TCreateParams); override;
...
procedure TForm1.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
with Params do
begin
ExStyle := ExStyle or WS_EX_NOACTIVATE;
WndParent := GetDesktopwindow;
end;
end;
Il modulo non può disporre della messa a fuoco ... quindi, la chiave viene inviata al controllo focalizzato precedente. (L'ho appena testato e funziona: la chiave è stata inviata a questa pagina Web)
Problemi correlati
- 1. Invio di sequenze di tasti ad un programma
- 2. Bluetooth non invia file ad altro dispositivo
- 3. Invia sequenze di tasti a un programma anche se è in background utilizzando C#
- 4. Invia sequenze di tasti al server vnc senza GUI
- 5. Come eseguire la sequenza di tasti all'interno di PowerShell?
- 6. Programma Java Sequenza di Fibonacci
- 7. Tasti di scelta rapida della sequenza per il menu
- 8. Esecuzione di un programma java da un altro programma java
- 9. Aggiunta di un dizionario ad un altro
- 10. Invia combinazione di tasti alla finestra di sfondo
- 11. Come si associa un tasto a "la funzione rappresentata dalla seguente sequenza di tasti"?
- 12. Copia NSMutableArray ad un altro
- 13. Esegui un altro programma in Linux da un programma C++
- 14. Segue ad un altro storyboard?
- 15. Come posso acquisire la sequenza di tasti che attiva "CellEndEdit" su un DataGridView in C#?
- 16. Xcode 4 idekeybindings comandi multipli per una sequenza di tasti
- 17. R passando il frame di dati ad un altro programma usando system()
- 18. C# - Convertire un Enum ad un altro
- 19. SimpleXML: aggiungi un albero ad un altro
- 20. "include" un file javascript ad un altro
- 21. Esegui un altro programma in C++
- 22. Installa apk da un altro programma
- 23. Invia contenuto degli appunti come sequenze di tasti in AutoHotkey
- 24. Invia stdin sequenze di tasti al canale senza newline richieste
- 25. Come condividere la cartella applicazioni ad un altro utente set
- 26. Fornisci ad app.config un altro nome dopo la compilazione?
- 27. Emulazione del mouse in un altro programma
- 28. come convertire lista di "sequenza vertice" ad un vettore
- 29. Come sapere se il mio programma viene convogliato ad un altro (Perl)
- 30. Come continuare ad eseguire la sequenza Future nonostante il fallimento?
Bingo! WS_EX_NOACTIVATE è ciò di cui ho bisogno. – user
Questo non sembra funzionare per me, in quanto il controllo perde la messa a fuoco quando premo un tasto sulla tastiera virtuale. Cosa mi manca? Sto usando XE2 in questo caso. – SiBrit