Nach 2 Stellen automatisch ein Doppelpunkt?

andy1337

Mitglied
Hallo,

ich habe ein Problem mit Visual Basic 6...

Ich habe mir ein Programm geschrieben, wo aber in einer TextBox automatisch ein Doppelpunkt eingefügt werden soll, nachdem man 2 Ziffern eingetragen hat...ect.... z.b. so: 12:40:00
(man tippt aber nur 12 40 und 00 in die txtBox)

Dass man die Doppelpunkte nicht schreiben brauch... Kann mir jemand helfen?


mfg andy
 
Würd ich auch sehr gerne wissen,

denke könnte so funktionieren das man einen after-ereignis(lost-focus oda so was) steuert, das diese dann die Zahl durchgeht und nach jeder 2. Stelle nen ":" setzt.

Oder vllt
bei einer Eingabe > 2 : setzen, aber denke nicht das das so funktionieren würde...naja habe keine Zeit das auszuprobieren, deshalb hoff ich dann mal auf baldige antwort ;)
 
Mal ganz auf die schnelle gesagt,
Code:
Private Sub TextBox1_Change()
If Len(TextBox1) = 2 Or Len(TextBox1) = 5 Then TextBox1 = TextBox1 & ":"
End Sub

Das funktioniert eigentlich
 
Mit der "Masked Textbox" geht das ganz einfach: da kann man ein Format festlegen (z.B. 00:00:00 wobei 0 eine Ziffer ist und der Doppelpunkt eben ein Doppelpunkt), und er hat dann die Doppelpunkte immer drin. Schaut euch mal die Zeiteinstellung unter Windows an, da ist auch so ein Feld
 
Bei VB6 muss man die erst einbinden. Ist glaub ich unter "Microsoft Windows Common Controls sonstnochirgendeineversionundrevisionundsoweiter...." Einfach alle von denen mal durchsuchen. Bei VB2005 ist die glaub ich schon unter den Standarts dabei...
 
War doch wo anders:
Projekt->Komponenten (Steuerelemente) -> Microsoft Masked Edit Controll 6.0 ankreuzen.

musst als Maske dann aber "##:##:##" eingeben, da der # als Ziffer hat.
 
Zurück