Hi, du änderst den Mauszeiger für die Klasse Window. Soll der Zeiger auch für andere Klassen geändert werden, dann must du das auch aufrufen.
Evtl. so.
BTW: Ich habe noch ein paar (wichtige) Änderungen gemacht. Sollteste Dir mal anschauen, auch wenn es nur ein Testbeispiel ist.
Code: Alles auswählen
EnableExplicit
Define hCursor
OpenWindow(0,0,0,200,200,"",#PB_Window_BorderLess)
hCursor = LoadCursor_(0, #IDC_HAND) : Debug " hCursor == " + hCursor
; SetClassLong_(WindowID(0), #GCL_HCURSOR, LoadCursorFromFile_("Hand.cur"))
ListIconGadget(1,5,5,150,100,"",100,#PB_ListIcon_AlwaysShowSelection|#PB_ListIcon_FullRowSelect|#PB_ListIcon_GridLines)
AddGadgetColumn(1,1,"",20)
ButtonGadget(2,5,110,80,30,"ENDE")
ButtonGadget(3,90,110,80,30,"ENDE")
DisableGadget(3,1)
If hCursor
SetClassLongPtr_(WindowID(0), #GCL_HCURSOR, hCursor) ; Window Class
SetClassLongPtr_(GadgetID(1), #GCL_HCURSOR, hCursor) ; ListIcon Gadget Class
EndIf
Repeat
; Delay(1)
; Event = WindowEvent()
Select WaitWindowEvent()
Case #PB_Event_CloseWindow ; I know borderless window, but this is always a good idea....
Break
Case #PB_Event_Gadget
Select EventGadget()
Case 2
Break
EndSelect
EndSelect
ForEver