AlienShooter
Grünschnabel
Moin alle zusammen.
Ich habe ein Problem mit SetFocus in VB. Ich habe nun schon alles Probiert was mir einfällt und finde einfach nicht den Fehler (falls es überhaupt einen gibt! )
Ich möchte, dass wenn das Feld "txtJahr" leer ist, der Focus wieder auf der Feld gesetzt wird und dabei die Fehlermeldung im Labelfeld "lblFehler" ausgegeben wird.
Aber genau da hackt es. Ist das Feld leer, wird der Focus zwar wieder in das Feld gesetzt, aber die Fehlermeldung wird nicht ausgegeben... fragt mich nicht wieso....
Nehme ich die Zeile "txtJahr.SetFocus" raus, wird die Fehlermeldung geschrieben ?!
Wenn ich die Sub mit dem Debugger durchgehe, dann steht komischerweise der Text in dem Labelfeld (auch mit "txtJahr.SetFocus" !)
Hier ein Teil des Codes:
Das komische dabei ist, dass ich es in einem anderem Feld genauso gemacht habe, und dort klappt es ohne Probleme .... nur bei den Feldern vom Tag, Monat und Jahr nicht !!**
Hier das Feld wo es klappt:
Ich habe es auch schon versucht, ob das Problem auftaucht wenn ich die Fehlermeldung in einem Text- statt Labelfeld ausgebe, aber ohne Erfolg.
Weiß nicht mehr weiter. Hoffe das ihr mir helfen könnt.
** Zur Info: Beim Programm gibt es vier Textfelder: 3 Stück für das Datum und eins (txtClientnummer) wo eine Zahl von 000 bis 999 eingetragen werden kann.
Gr€€tz AlienShooter
Ich habe ein Problem mit SetFocus in VB. Ich habe nun schon alles Probiert was mir einfällt und finde einfach nicht den Fehler (falls es überhaupt einen gibt! )
Ich möchte, dass wenn das Feld "txtJahr" leer ist, der Focus wieder auf der Feld gesetzt wird und dabei die Fehlermeldung im Labelfeld "lblFehler" ausgegeben wird.
Aber genau da hackt es. Ist das Feld leer, wird der Focus zwar wieder in das Feld gesetzt, aber die Fehlermeldung wird nicht ausgegeben... fragt mich nicht wieso....
Nehme ich die Zeile "txtJahr.SetFocus" raus, wird die Fehlermeldung geschrieben ?!
Wenn ich die Sub mit dem Debugger durchgehe, dann steht komischerweise der Text in dem Labelfeld (auch mit "txtJahr.SetFocus" !)
Hier ein Teil des Codes:
Code:
Private Sub txtJahr_LostFocus()
If txtJahr.Text = "" Then
lblFehler.Caption = "Bitte eine Jahreszahl eingeben!"
txtJahr.Text = Right$(Date, 4)
txtJahr.SetFocus
Else
lblFehler.Caption = ""
End If
...
End Sub
Das komische dabei ist, dass ich es in einem anderem Feld genauso gemacht habe, und dort klappt es ohne Probleme .... nur bei den Feldern vom Tag, Monat und Jahr nicht !!**
Hier das Feld wo es klappt:
Code:
Private Sub txtClientnummer_LostFocus()
If txtClientnummer.Text = "" Then
lblFehler.Caption = ""
lblFehler.Caption = "Bitte eine Clientnummer vergeben!"
txtClientnummer.Text = "080"
txtClientnummer.SetFocus
Else
lblFehler.Caption = ""
End If
End Sub
Ich habe es auch schon versucht, ob das Problem auftaucht wenn ich die Fehlermeldung in einem Text- statt Labelfeld ausgebe, aber ohne Erfolg.
Weiß nicht mehr weiter. Hoffe das ihr mir helfen könnt.
** Zur Info: Beim Programm gibt es vier Textfelder: 3 Stück für das Datum und eins (txtClientnummer) wo eine Zahl von 000 bis 999 eingetragen werden kann.
Gr€€tz AlienShooter