Tehnika Krstarice > Programiranje > VBA - Obeležavanje pomoću trepćuće label-e

VBA - Obeležavanje pomoću trepćuće label-e

20.02.2001.

Često je korisnicima potrebno privući pažnju na određeni deo formulara, kada unose podatke ili kada naprave grešku. Zašto na neki način ne bi ukazali korisniku da je napravio pogrešan unos u određenom polju, tako što će naslov pored tog polja početi da blinkuje tj. da label-i dodelimo flash efekat? Da bi ovo uradili iskoristićemo Timer događaj.

Na primer, polje i naziv - label-u, nazvanu "lblCena" u koju korisnik recimo unosi cenu. Mi ćemo kroz programski kod reagovati, ako je korisnik npr. uneo negativnu vrednost cene i startovaćemo blink-ovanje. Na taj način obavestićemo korisnika da nešto nije u redu, i usput ćemo mu odmah naznačiti i gde je, na formi, načinio grešku. Sledeći kod ćemo svestiti u događaj Timer (pre toga postavite na formu Timer kontrolu):

Private Sub Form_Timer()
  With Me.lblCena
     .ForeColor = (IIf(.ForeColor = vbRed, vbBlack, vbRed))
  End With
End Sub

Nakon ovogkoda potrebno je samo da u glavnu formu ubacimo okidač - trigger, koji će pokrenuti flash efekt. Postavite sledeći programski kod u događaj "OnLostFocus" i to polja koje objašnjava sama label-a (polje cene, kao na slici):

  Private Sub txtCena_LostFocus()
    If Me!Form.[Cena] < 0 Then
        Me.TimerInterval = 300
    Else
        Me.TimerInterval = 0
        Me.lblCena.ForeColor = vbBlack
    End If
End Sub

Preporučite ovaj članak

Članak još uvek nije ocenjen.