<...zurück>

Ändern der Cursoranzeige (Hourglass)

Da bei CE2.x im Gegensatz zum Desktop-VB das Screen-Objekt in VBCE nicht existiert, steht die Funktion "mousepointer" nicht zur Verfügung. Um dennoch den Status "System ist beschäftigt" anzuzeigen, muß eine API-Funktion bemüht werden, um den Mauscursor zu ändern.

Deklarationsteil:

Declare Function LoadCursor Lib "coredll.dll" Alias "LoadCursorW" (ByVal hInstance As Long, ByVal lpCursorName As Long) As Long
Declare Function SetCursor Lib "coredll.dll" (ByVal hCursor As Long) As Long
Const IDC_WAIT = 32514

..und hier die Beispielfunktion die die Sanduhr an- oder ausschaltet:

Public Function WaitCursor(bOnOrOff As Boolean) As Long
    Dim hCursor As Long
    If bOnOrOff = True Then
        hCursor = LoadCursor(0, IDC_WAIT)
    Else
        hCursor = LoadCursor(0, 0)
    End If
    WaitCursor = SetCursor(hCursor)
End Function

Übergeben wird der Boolwert, der angibt, ob die Sanduhr angezeigt werden soll, oder nicht.

Unter CE3.X existiert das Screen-Objekt. Hier kann mit der Mousepointer-Eigenschaft gearbeitet werden. Die API-Funktion bleibt dennoch funktionsfähig.

 

<...zurück>