Shadow a écrit :Merci mais non, bien que ce code soit simple et court, il change le curseur
de toute une famille de même gadget et pas juste le gadget voulue
Si tu utilise ce code pour par exemple un bouton, tous les boutons
auront le même curseur, moi je ne veux pas
Maintenant ya surement une astuce.
Merci pour tous.
C'est bizarre, le code de ChrisR est pourtant indépendant du type de gadget et du gadget aussi.
Code : Tout sélectionner
Global Window_1
Global Canvas_0, Button_0
Window_1 = OpenWindow(#PB_Any, 0, 0, 200, 270, "", #PB_Window_SystemMenu)
Canvas_0 = CanvasGadget(#PB_Any, 50, 20, 100, 25, #PB_Canvas_Container)
SetGadgetAttribute(Canvas_0, #PB_Canvas_Cursor, #PB_Cursor_Hand)
Button_0 = ButtonGadget(#PB_Any, 0, 0, 100, 25, "MonBouton1")
CloseGadgetList()
Canvas_1 = CanvasGadget(#PB_Any, 50, 60, 100, 25, #PB_Canvas_Container)
SetGadgetAttribute(Canvas_1, #PB_Canvas_Cursor, #PB_Cursor_Cross )
Button_1 = ButtonGadget(#PB_Any, 0, 0, 100, 25, "MonBouton2")
CloseGadgetList()
Canvas_2 = CanvasGadget(#PB_Any, 50, 100, 100, 25, #PB_Canvas_Container)
SetGadgetAttribute(Canvas_2, #PB_Canvas_Cursor, #PB_Cursor_IBeam )
String_0 = StringGadget(#PB_Any, 0, 0, 100, 25, "azerty")
CloseGadgetList()
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
Case #PB_Event_Gadget
Select EventGadget()
Case Button_0
If GetGadgetAttribute(Canvas_0, #PB_Canvas_Cursor) = #PB_Cursor_Hand
SetGadgetAttribute(Canvas_0, #PB_Canvas_Cursor, #PB_Cursor_Busy)
Else
SetGadgetAttribute(Canvas_0, #PB_Canvas_Cursor, #PB_Cursor_Hand)
EndIf
Case Button_1
If GetGadgetAttribute(Canvas_1, #PB_Canvas_Cursor) = #PB_Cursor_Cross
SetGadgetAttribute(Canvas_1, #PB_Canvas_Cursor, #PB_Cursor_Denied)
Else
SetGadgetAttribute(Canvas_1, #PB_Canvas_Cursor, #PB_Cursor_Cross)
EndIf
;Case string_0
EndSelect
EndSelect
ForEver