Rubrik: Oberfläche · Effekte | VB-Versionen: VB4, VB5, VB6 | 11.09.01 |
Realisierung von Lauftext Realisierung einer Laufschrift ohne Timer in einer Do...Loop-Anweisung - vorwärts und rückwärts. | ||
Autor: PyRo | Bewertung: | Views: 26.636 |
ohne Homepage | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Bereits früher einmal haben wir Ihnen die Realisierung einer Laufschrift mit Hilfe eines Timer-Objekts und einem Label gezeigt.
Die nachfolgende Lösung basiert auf einer Do...Loop - Schleife mit entsprechenden DoEvents-Anweisungen, um einerseits die Laufschrift zu beenden und anderseits dem System die notwendige Zeit für andere Aufgaben zu geben.
Um das Beispiel auszuprobieren, benötigen Sie eine Form, ein Textfeld Text1, sowie drei CommandButtons (Command1, Command2 und Command3). Beim Klicken auf die erste Schaltfläche wird die Laufschrift gestartet - und zwar von rechts nach links. Über die zweite Schaltfläche Command2 erfolgt ein Richtungswechsel, d.h. die Anzeige der Laufschrift erfolgt von links nach rechts. Über die dritte Schaltfläche Command3 wird der Vorgang angehalten.
Und hier der Code:
Option Explicit Dim Lauftext As String Dim Halt As Boolean ' Laufschrift von rechts nach links Private Sub Command1_Click() Dim I As Integer Halt = False ' Den Lauftext einstellen If Lauftext = Empty Then _ Lauftext = "www.vbarchiv.de *** " Do Until Halt = True ' Kurz warten For I = 0 To 15000: DoEvents: Next DoEvents ' Hinten an den Lauftext das 1. Zeichen anhängen Lauftext = Lauftext & Mid(Lauftext, 1, 1) ' Vom Lauftext das 1. Zeichen wegnehmen Lauftext = Mid(Lauftext, 2, Len(Lauftext) - 1) ' Den Lauftext zuweisen Text1.Text = Lauftext Loop End Sub ' Laufschrift von links nach rechts Private Sub Command2_Click() Dim I As Integer Halt = False ' Den Lauftext einstellen If Lauftext = Empty Then _ Lauftext = "www.vbarchiv.de *** " Do Until Halt = True ' Kurz warten For I = 0 To 15000: DoEvents: Next DoEvents ' Vorne an den Lauftext das Letze Zeichen anhängen Lauftext = Mid(Lauftext, Len(Lauftext), 1) & _ Lauftext ' Das letze Zeichen wegnehmen Lauftext = Mid(Lauftext, 1, Len(Lauftext) - 1) ' Den Lauftext zuweisen Text1.Text = Lauftext Loop End Sub ' Anzeige unterbrechen Private Sub Command3_Click() Halt = True End Sub