EnableExplicit Global lpPrevFunc Procedure ButtonProc(hWnd,uMsg,wParam,lParam) Select uMsg Case #WM_LBUTTONDOWN Debug "Linke Maustaste wird gedrückt" Case #WM_LBUTTONUP Debug "Linke Maustaste wurde losgelassen" EndSelect ProcedureReturn CallWindowProc_(lpPrevFunc,hWnd,uMsg,wParam,lParam) EndProcedure If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered) ButtonGadget(1,10,10,100,20,"Button",0) lpPrevFunc = SetWindowLongPtr_(GadgetID(1),#GWL_WNDPROC,@ButtonProc()) Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow EndIf