ich bitte mir ein wenig unter die Arme zu greifen.
Ich versuche aktuell über einen Maus-Klick auf ein Canvas Gadget ein Fenster zu verschieben - was so auch ganz gut schon funktioniert. Unschön ist, dass sich beim verschieben des Fenster der Maus-Cursor an Position 0,0 des Fensters verschiebt und ich nicht weiß, wie ich das unterbinden kann.
Schön währe, wenn sich die Maus-Zeiger-Position sich nicht beim verschieben verändern würde.
Wer kann mir helfen?
Code: Alles auswählen
;EnableExplicit
UsePNGImageDecoder()
;- Enumerationen
Enumeration
#Window_Main
#Image_Window_Main_Button_MainMenu
#Canvas_Window_Main_MainMenu
#Canvas_Window_Main_MouseMover
EndEnumeration
;- Variablen
Define Window_Event, Quit,x,y
;- Farben
Define Theme_Color_Window_Background = RGB(41,41,41)
;- Grafiken
;- Hauptfenster
OpenWindow(#Window_Main, 0, 0, 800, 600, "Test", #PB_Window_BorderLess | #WS_SIZEBOX | #PB_Window_ScreenCentered)
SetWindowColor(#Window_Main,Theme_Color_Window_Background)
;CanvasGadget(#Canvas_Window_Main_MainMenu, 0, 0, 52, 52)
CanvasGadget(#Canvas_Window_Main_MouseMover,100,100,200,200)
;StartDrawing(CanvasOutput(#Canvas_Window_Main_MainMenu))
;DrawImage(ImageID(#Image_Window_Main_Button_MainMenu), 0, 0, 52,52)
;StopDrawing()
Repeat
Window_Event = WaitWindowEvent()
Select Window_Event
Case #PB_Event_Gadget
Select EventGadget()
Case #Canvas_Window_Main_MouseMover ; Fenster Bewegen
If EventType() = #PB_EventType_LeftButtonDown Or (EventType() = #PB_EventType_MouseMove And GetGadgetAttribute(#Canvas_Window_Main_MouseMover, #PB_Canvas_Buttons) & #PB_Canvas_LeftButton)
GetCursorPos_(Coords.POINT)
ResizeWindow(#Window_Main,Coords\x+WindowMouseX(#Window_Main),Coords\y+WindowMouseY(#Window_Main),#PB_Ignore,#PB_Ignore)
EndIf
EndSelect
EndSelect
Until Quit = 1
End