Heute möchten wir Ihnen zwei einfache Funktionen vorstellen, mit denen sich ein Fenster langsam ein- bzw. ausblenden lässt. Fügen Sie nachfolgenden Code in ein Modul ein: Option Explicit ' benötigte API-Deklaration Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) ' Fenster langsam einblenden Public Sub FadeIn(oForm As Form, _ Optional ByVal nStep As Long = 75, _ Optional ByVal maxWidth As Long = 0, _ Optional ByVal maxHeight As Long = 0) Dim w As Long Dim h As Long With oForm If maxWidth = 0 Then maxWidth = .Width If maxHeight = 0 Then maxHeight = .Height ' minimale Fenstergröße .Width = 300 .Height = 300 On Error Resume Next If Not .Visible Then .Visible = True On Error GoTo 0 While .Width < maxWidth And .Height < maxHeight w = .Width + nStep If w > maxWidth Then w = maxWidth h = .Height + nStep If h > maxHeight Then h = maxHeight .Move .Left, .Top, w, h ' kurz warten .Refresh Sleep (5) Wend End With End Sub ' Fenster langsam ausblenden Public Sub FadeOut(oForm As Form, _ Optional ByVal nStep As Long = 75) Dim w As Long Dim h As Long Dim minWidth As Long Dim minHeight As Long With oForm minWidth = 330 minHeight = 330 w = .Width h = .Height On Error Resume Next While w > minWidth And h > minHeight w = w - nStep h = h - nStep .Move .Left, .Top, w, h ' kurz warten .Refresh Sleep (5) Wend On Error GoTo 0 End With End Sub Aufrufbeispiel: Private Sub Form_Load() ' Fenster langsam einblenden FadeIn Me End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) ' Form ausblenden FadeOut Me End Sub Anmerkung von Gerd Kuklau (25.05.09) ' Fenster langsam ausblenden Public Sub FadeOut(oForm As Form, _ Optional ByVal nStep As Long = 75) Dim w As Long Dim h As Long Dim minWidth As Long Dim minHeight As Long With oForm minWidth = 330 minHeight = 330 w = .Width h = .Height On Error Resume Next While w > minWidth And h > minHeight w = w - nStep h = h - nStep .Move .Left, .Top, w, h ' kurz warten .Refresh ' sieht schöner aus DoEvents Sleep (5) Wend On Error GoTo 0 End With End Sub Dieser Tipp wurde bereits 11.045 mal aufgerufen.
Anzeige
![]() ![]() ![]() (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 ![]() Manfred Bohn IndexOf für mehrdimensionale Arrays Die generische Funktion "IndexOf" ermittelt das erste Auftreten eines bestimmten Wertes in einem n-dimensionalen Array Neu! sevEingabe 3.0 ![]() Einfach stark! Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. |
||||||||||||||||
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. |