mir ist aufgefallen, dass das Event #PB_EventType_LeftClick beim ImageGadget schon kommt wenn man den Mausbutton drückt und nicht erst wenn man ihn wieder loslässt.
Das ist beim ButtonGadget z. B. anders. Dort wird das Event #PB_EventType_LeftClick erst ausgelöst wenn man den Button wieder loslässt.
Nun zu meinem Problem. Ich wollte bei einem ImageGadget die Events #PB_EventType_LeftClick und #PB_EventType_DragStart separat verarbeiten. Da aber vor einem #PB_EventType_DragStart immer ein #PB_EventType_LeftClick kommt, stört das.
Hier mal ein Beispielcode zu ausprobieren:
Code: Alles auswählen
If OpenWindow(0, 0, 0, 245, 105, "ImageGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
If CreateImage(0, 100, 83)
StartDrawing(ImageOutput(0))
DrawText(10, 10, "Hallo")
StopDrawing()
ImageGadget(0, 10, 10, 100, 83, ImageID(0)) ; Imagegadget Standard
ImageGadget(1, 130, 10, 100, 83, ImageID(0), #PB_Image_Border) ; Imagegadget mit Rand
EndIf
EndIf
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Select EventWindow()
Case 0
CloseWindow(0)
End
EndSelect
Case #PB_Event_Gadget
Select EventGadget()
Case 0
Select EventType()
Case #PB_EventType_LeftClick
Debug "Left Click IMG_0"
Case #PB_EventType_DragStart
Debug "DragStart IMG_0"
EndSelect
Case 1
Select EventType()
Case #PB_EventType_LeftClick
Debug "Left Click IMG_1"
Case #PB_EventType_DragStart
Debug "DragStart IMG_1"
EndSelect
EndSelect
EndSelect
ForEver
End
Gruß Jake