Formattazione campo record in un form

di il
4 risposte

Formattazione campo record in un form

Un Form di ACCESS viene in genere collegato ad una sorgente di dati i cui record vengono visualizzati nel form in seguenza, sui quali ci si sposta utilizzando il selettore di record a sx del form.

Il mio problema consiste in questo:

Ogni record ha un campo READED di tipo boolean che viene esposto con un checkbox, accanto ad adesso c'é una etichetta etReaded il cui colore di sfondo (backcolor) dovrebbe cambiare da verde (se READED é vero) a rosso (se READED é falso).

Ho provato a mettere il seguente codice nell'evento current del form:

Private Sub Form_Current()

If Me.chReaded.Value <> 0 Then
etChReaded.BackColor = vbGreen
etChReaded.ForeColor = vbBlue
chReaded.BorderColor = vbGreen
Else
etChReaded.BackColor = vbRed
etChReaded.ForeColor = vbBlue
chReaded.BorderColor = vbRed
End If

End Sub

Ora il problema sta nel fatto che se il record corrente ha READED a falso tutti vengono visualizzati in ROSSO se invece é True vengo tutti visualizzati a VERDE anche se il chReaded viene spuntato correttamente.


Il form si limitata semplicemente a visualizzare i record.. (a mo di report) i campi sono bloccati

e i record si possono solo scorrere:

In allegato il form come appare…

Domanda:

E' possibile in qualche modo, per ogni record, formattare la riga corrispondente? In VB6 mi ricordo che si poteva fare… in ACCESS??

Grazie per ogni contributo.
P.S.: il form presenta riga per riga ciascun record con i campi bloccati e collegati al datasource del form… il form serve solo a far scorrere e visualizzare i record. Col cambio del colore si vorrebbe evidenziare i record la cui informazione non é stata ancora letta...

4 Risposte

Devi accedere o registrarti per scrivere nel forum
4 risposte