Tipp 0300 Fenster animiert anzeigen
Autor/Einsender:
Datum:
  Dinko Hasanbasic
04.01.2003
Entwicklungsumgebung:   VB 6
Ab Windows 98 können mit der API-Funktion AnimateWindow spezielle Effekte, wie z.B. Rollen, Gleiten und Alpha-Blending, beim Anzeigen oder Verbergen von Fenstern erzeugt werden. Durch das Kombinieren der entsprechenden Konstanten können die verschiedensten Effekte erzielt werden.
Code im Codebereich des Moduls modAniWindow
 
Option Explicit

Public Declare Function AnimateWindow Lib "user32" ( _
      ByVal hwnd As Long, ByVal dwTime As Long, ByVal _
      dwFlags As Long) As Boolean

Public Const AW_SLIDE = &H40000
Public Const AW_ACTIVATE = &H20000
Public Const AW_BLEND = &H80000
Public Const AW_HIDE = &H10000
Public Const AW_CENTER = &H10
Public Const AW_HOR_POSITIVE = &H1
Public Const AW_HOR_NEGATIVE = &H2
Public Const AW_VER_POSITIVE = &H4
Public Const AW_VER_NEGATIVE = &H8

Public AnimTyp As Long
 
Code im Codebereich der Form frmMain
 
Option Explicit

Private Sub Form_Load()
  With cmbAnimTyp
    .Clear

    .AddItem "Blend"
    .ItemData(.NewIndex) = AW_BLEND

    .AddItem "Links -> Rechts"
    .ItemData(.NewIndex) = AW_SLIDE Or AW_HOR_POSITIVE

    .AddItem "Links oben -> rechts unten"
    .ItemData(.NewIndex) = AW_VER_POSITIVE Or AW_HOR_POSITIVE

    .AddItem "Rechts -> Links"
    .ItemData(.NewIndex) = AW_SLIDE Or AW_HOR_NEGATIVE

    .AddItem "Rechts oben -> links unten"
    .ItemData(.NewIndex) = AW_HOR_NEGATIVE Or AW_VER_POSITIVE

    .AddItem "Oben -> Unten"
    .ItemData(.NewIndex) = AW_SLIDE Or AW_VER_POSITIVE

    .AddItem "Unten -> Oben"
    .ItemData(.NewIndex) = AW_SLIDE Or AW_VER_NEGATIVE

    .AddItem "Mitte"
    .ItemData(.NewIndex) = AW_CENTER

    .ListIndex = 2
  End With
End Sub

Private Sub cmbAnimTyp_Click()
  AnimTyp = cmbAnimTyp.ItemData(cmbAnimTyp.ListIndex)
End Sub

Private Sub cmdShowForm_Click()
  frmEffekt.Show
End Sub
 
Code im Codebereich der Form frmEffekt
 
Option Explicit

Private Sub Form_Load()
  AnimateWindow Me.hwnd, 500, AnimTyp
  Me.Refresh
End Sub

Private Sub cmdSchliessen_Click()
  Unload Me
End Sub

Private Sub Form_Unload(Cancel As Integer)
  AnimateWindow Me.hwnd, 500, AW_BLEND Or AW_HIDE
End Sub
 
Weitere Links zum Thema
Transparente Fenster
Titelleiste blinken lassen
Transparente Fenster (ab Windows 2000)

Windows-Version
95
98/SE
ME
NT
2000
XP
Vista
Win 7
VB-Version
VBA 5
VBA 6
VB 4/16
VB 4/32
VB 5
VB 6


Download  (4,5 kB) Downloads bisher: [ 2556 ]

Vorheriger Tipp Zum Seitenanfang Nächster Tipp

Startseite | Projekte | Tutorials | API-Referenz | VB-/VBA-Tipps | Komponenten | Bücherecke | VB/VBA-Forum | VB.Net-Forum | DirectX-Forum | Foren-Archiv | DirectX | VB.Net-Tipps | Chat | Spielplatz | Links | Suchen | Stichwortverzeichnis | Feedback | Impressum

Seite empfehlen Bug-Report
Letzte Aktualisierung: Montag, 12. September 2011