Ä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.