Rubrik: Maus & Tastatur · Maus | VB-Versionen: VB4, VB5, VB6 | 25.12.00 |
Anzeige eines Animierten Cursors Mit der nachfolgenden Routine können anstelle der Standard-Mauszeiger auch animierte Mauszeiger angezeigt werden. | ||
Autor: Heinz Prelle | Bewertung: | Views: 16.507 |
www.visual-basic5.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Mit der nachfolgenden Routine können anstelle der Standard-Mauszeiger auch animierte Mauszeiger angezeigt werden.
' Zunächst die benötigten API-Deklarationen Private Declare Function LoadCursorFromFile Lib "user32" _ Alias "LoadCursorFromFileA" ( _ ByVal lpFileName As String) As Long Private Declare Function SetClassLong Lib "user32" _ Alias "SetClassLongA" ( _ ByVal hwnd As Long, _ ByVal nIndex As Long, _ ByVal dwNewLong As Long) As Long Private Const GCLNG_CURSOR = (-12) ' Animierten Mauszeiger laden und anzeigen Public Function ShowAniCursor(ByVal hWnd As Long, _ ByVal Datei As String) As Long Dim AlterCursor As Long Dim NeuerCursor As Long If Dir(Datei) <> "" Then NeuerCursor = LoadCursorFromFile(Datei) AlterCursor = SetClassLong(hWnd, GCLNG_CURSOR, _ NeuerCursor) End If ShowAniCursor = AlterCursor End Function ' ursprünglichen Mauszeiger wiederherstellen Public Sub ShowNormalCursor(ByVal hWnd As Long, _ ByVal AlterCursor As Long) SetClassLong hWnd, GCLNG_CURSOR, AlterCursor End Sub
Erläuterungen:
Übergeben Sie der Funktion ShowAniCursor die animierte Cursordatei (*.ani), um den animierten Mauszeiger anzuzeigen. Als Rückgabewert wird ein Long-Zeiger auf den ursprünglichen Mauszeiger zurückgegeben. Diesen Wert benötigten Sie, wenn Sie den ursprünglichen Mauszeiger wiederherstellen möchten. Übergeben Sie den Wert dann der Prozedur ShowNormalCursor.
Beispiel:
' animierten Mauszeiger anzeigen Dim lCursor As Long lCursor = ShowAniCursor(Me.hWnd, "hourglas.an") ' ursprünglichen Cursor wiederherstellen If lCursor <> 0 Then ShowNormalCursor Me.hWnd, lCursor