If KeyCode = 38 Then
'Se il controllo attivo e' una classe TextBox... If TypeOf ActiveControl Is TextBox Then '...allora passo il focus al controllo precedente SendKeys "+{TAB}" 'Azzero il KeyCode KeyCode = 0 End If 'Tasto freccia UP ElseIf KeyCode = 40 Then 'Se il controllo attivo e' una classe TextBox... If TypeOf ActiveControl Is TextBox Then '...allora passo il focus al controllo successivo SendKeys "{TAB}" 'Azzero il KeyCode KeyCode = 0 End If End If Con quasi tutti i controlli presenti in VB, e' possibile spostare il focus al controllo successivo o precedente utilizzando i tasti freccia UP e DOWN. Nel controllo TextBox questo non avviene, in quanto la pressione di uno di questi due tasti provoca semplicemente lo spostamento del Caret tra i caratteri della stringa presente nel controllo. Tale funzionalita' e' pero' gia' implementata con i tasti freccia LEFT e RIGHT; quindi, tramite un piccolo trucco, possiamo convertire la funzionalita' dei tasti UP e DOWN in modo da utilizzarli per lo spostamento del focus: Settare la proprieta' KeyPreview del Form su True Inserire il seguente codice nell'evento KeyDown del Form Tasto freccia DOWN |