Focus


Quando nel nostro progetto il programma incontra un errore e mostra il messaggio, sarebbe comodo all’utente che il cursore si puntasse da solo sul campo dove ha rilevato il problema. In pratica il nostro scopo e focalizzare un componente sulla form in modo che abbia il controllo della tastiera. Per fare questo usiamo la procedura “SeFocus” posseduta da tutti i componenti win.

Possiamo notare, quando scriviamo un comando, che l’editor di Delphi ci aiuta durante la scrittura facendoci vedere la lista delle proprietà compatibili con quello che stiamo scrivendo.

 

 

Allora per fare questo basta scrivere “Edit1.SetFocus;” nel primo blocco e il relativo comando nel secondo blocco, per Edit2. Provate.

A runtime è possibile spostare il focus premendo il tasto “Tab” della tastiera, in questo modo il fuoco verrà spostato attraverso tutti gli oggetti presenti nella form, la sequenza non è casuale ma dipende dalla cronologia con cui sono stati messi i componenti sulla form. Ma se si vuole modificare questa sequenza?

 

Tastino dx sulla form, selezionate la voce in figura e verrà mostrata:

 

 

Come è possibile intuire il componente in alto è quello che avrà il fuoco per prima (quando viene mostrata la form), gli altri in sequenza riceveranno il fuoco a ogni pressione del tasto Tab. Per spostare la sequenza selezionare la voce e premere le frecce nel verso che si vuole. Se selezionate come prima voce “Edit1”, il cursore si posizionerà nel campo subito dopo aver lanciato il programma. Fate un po’ di prove modificando la sequenza e verificate quello che succede a runtime premendo Tab.

Stile XP

Indietro  Guide