Ein bisschen Spielerein, um das eigene Programm "schöner" zu machen: Warum nicht? Das nachfolgende Beispiel zeigt einen wirklich schönen Fade-Effekt, bei dem verschiedene Textpassagen langsam ein- und wieder ausgeblendet werden. Um das nachfolgende Beispiel zu testen, erstellen Sie ein neues Formular, plazieren darauf ein Label-Element mit dem Namen lblMsg, sowie ein Timer-Objekt namens myTimer. Und hier der gesamte benötigte Code: Option Explicit ' Name : FadeInFadeOut ' Syntax : ' Sprache : Visual Basic 6 ' Autor : René Zimmerling of V.C.S.P (vyger@web.de) ' Beschreibung : ' ' Blendet nacheinander verschiedene Meldungen ein- und aus ' (geeignet für Info- oder About-Boxen). ' ' Wurde die letzte Nachricht erreicht, so wird mit der ersten ' Nachricht neubegonnen. ' ============================================================== ' Festlegen von Titel des Fensters und des Button Textes Const fag_TitleStr = "VB6: FadeIn/FadeOut" Const fag_ButtonOkayStr = "Okay, habe es gelesen" ' Array für die einzelnen Messages Dim strMsg() As String ' Array für die Farben Dim lngColor() As Long ' Festlegen von Timer.Interval Const msg_TimerInterval = 200 ' Abfrage für ein- und ausblenden Dim msg_FadeIn As Boolean ' Counter für den Timer Dim msg_TimerVal As Integer ' Counter für Messages Dim msg_Current As Integer Private Sub Form_Load() ' Messages (Textzeilen) ReDim strMsg(4) strMsg(0) = "+++ vb@rchiv +++ Das große Visual Basic Archiv" strMsg(1) = "News, Workshop, Tipps, Source, Downloads, u.v.m." strMsg(2) = "www.vbarchiv.net +++ www.vbarchiv.de" strMsg(3) = "FadeIn - FadeOut" strMsg(4) = "Coded 2001 by René Zimmerling of V.C.S.P." ' Farben ReDim lngColor(13) lngColor(1) = &HC0C0C0 ' Hintergrundfrage Grau lngColor(2) = &HB0B0B0 lngColor(3) = &HA0A0A0 lngColor(4) = &H909090 lngColor(5) = &H808080 lngColor(6) = &H707070 lngColor(7) = &H608060 lngColor(8) = &H505050 lngColor(9) = &H404040 lngColor(10) = &H303030 lngColor(11) = &H202020 lngColor(12) = &H101010 lngColor(13) = &H0& ' Textfarbe Schwarz ' Aufrufen der Message-Routine StartFade End Sub Private Sub myTimer_Timer() ' Wenn Msg_FadeIn = True (also einblenden aktiv), ' wird Msg_TimerVal um den Wert 1 erhöht ' Wenn Msg_FadeIn = False (also ausblenden aktiv), ' wird Msg_myTimerVal um den Wert 1 vermindert If msg_FadeIn = True Then msg_TimerVal = msg_TimerVal + 1 Else msg_TimerVal = msg_TimerVal - 1 End If ' Message anzeigen If msg_Current > UBound(strMsg) Then _ msg_Current = 0 lblMsg.Caption = strMsg(msg_Current) Select Case msg_TimerVal Case 0 ' Umschalten auf "Einblenden" msg_FadeIn = True ' Nächste Nachricht auswählen msg_Current = msg_Current + 1 Case 14 ' Umschalten auf "Ausblenden" msg_FadeIn = False Case Else ' Setzen der Farbe lblMsg.ForeColor = lngColor(msg_TimerVal) End Select End Sub Private Sub StartFade() ' Wir starten mit Message Nr. 1 msg_Current = 0 ' Wir starten mit einer Einblendung msg_FadeIn = True ' Einschalten des Timers und setzen des Intervalls myTimer.Enabled = True myTimer.Interval = msg_TimerInterval End Sub Viel Spass mit dem Code! Dieser Tipp wurde bereits 21.797 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevISDN 1.0 Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats April 2024 Skyfloy Chart von Microsoft und dazu noch gratis Tutorial für Microsoft Chart Controls für Microsoft .NET Framework 3.5 TOP! Unser Nr. 1 Neu! sevDataGrid 3.0 Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |