2009-07-24 12 views
7

Mi piacerebbe essere in grado di emulare a livello di programmazione la navigazione della tastiera per le finestre di dialogo.C# Come linguetta a livello di programmazione tra i controlli

Ho un dispositivo hardware personalizzato con una tastiera che vorrei utilizzare per la navigazione della finestra di dialogo .

So di Focus(), ma preferirei fare qualcosa che automaticamente rispettato l'ordine di tabulazione. Emulando la navigazione da tastiera, non mi preoccupo di reinventare un comportamento complesso per ciascun tipo di controllo .

Qualcuno sa come fare?

Grazie!

+0

Grazie, erano tutte ottime risposte, e così veloce anche Sono andato con il suggerimento di Thomas poiché si adattava bene al mio progetto. – NXT

risposta

3

È possibile utilizzare P/Invoke per chiamare la funzione API di Windows keybd_event per simulare la pressione del tasto Tab.

Bonus: è possibile utilizzare il dispositivo per inserire le schede in un editor di testo! ;)

9

in WinForms:

Control nextControl = this.GetNextControl(myControl, true); 

per simulare una stampa scheda, credo che sia il seguente:

SendKeys.Send("{TAB}"); 
Problemi correlati