Come modificare lo sfondo del controllo attivo in Microsoft Access

Quando la maschera di immissione dati contiene molti controlli, diventa utile sapere come modificare lo sfondo del controllo attivo in Microsoft Access.

Se il controllo attivo ha uno sfondo di un colore diverso da quello di tutti gli altri controlli, per l’utente è facile identificare immediatamente il controllo che ha il focus, ossia quello attivo.

Un controllo come la casella di testo, o la casella combinata, solitamente utilizzati per immissione dati, ha la proprietà BackColor. Tale proprietà è read/write: posso sia leggerne il valore corrente, sia modificarlo run-time. Con run-time s’intende mentre la maschera è in esecuzione (non solo quindi modificarlo in modalità struttura).

Il valore della proprietà BackColor è un valore numerico di tipo Long.

Come posso sapere a quale valore Long corrisponde il colore da impostare?

Se conosco già i valori RGB, è molto semplice: posso utilizzare la funzione RGB che restituisce un valore Long:

me.nomecontrollo.BackColor = RGB(200,200,204)

Se non conosco i valori RGB, posso scegliere manualmente il colore utilizzando la proprietà Colore sfondoAltri colori… – Personalizzati. Da qui imposto il colore cliccando sull’area colorata e leggo così i valori RGB corrispondenti.

Altri Colori

 

Ora che conosco i tre valori da utilizzare (R: red, G: green, B: blue), posso impostare il BackColor nell’evento Su INVIO:

Private Sub txtRagioneSociale_Enter()
Me.txtRagioneSociale.BackColor = RGB(255, 255, 204)
End Sub

E per rimuovere il colore, cioè riportarlo al colore bianco predefinito, utilizzo l’evento Su Uscita:

Private Sub txtRagioneSociale_Exit(Cancel As Integer)
Me.txtRagioneSociale.BackColor = RGB(255, 255, 255)
End Sub

E’ possibile migliorare in almeno due modi il codice suggerito… Lascio a voi di scoprire come.