More ways to click gadgets

Share your advanced PureBasic knowledge/code with the community.
User avatar
netmaestro
PureBasic Bullfrog
PureBasic Bullfrog
Posts: 8451
Joined: Wed Jul 06, 2005 5:42 am
Location: Fort Nelson, BC, Canada

More ways to click gadgets

Post by netmaestro »

Code updated For 5.20+

Code: Select all

Procedure ClickGadget(gadget)
  SendMessage_(gadget,#WM_LBUTTONDOWN ,#MK_LBUTTON, 0)
  Delay(250)
  SendMessage_(gadget,#WM_LBUTTONUP ,#MK_LBUTTON, 0)
EndProcedure

OpenWindow(0,0,0,320,240,"Sensitivity Training",#PB_Window_ScreenCentered)

ButtonGadget(0,0,200,120,20,"close on hover")
ButtonGadget(1,120,200,200,20,"close on push or return key")
AddKeyboardShortcut(0,#PB_Shortcut_Return, 1)
quit=0
Repeat
  ev=WaitWindowEvent(1)
  Select ev
    Case #PB_Event_Menu
      If EventMenu()=1
        ClickGadget(GadgetID(1))
      EndIf
    Case #PB_Event_Gadget
      quit=1
  EndSelect
  If ChildWindowFromPoint_(WindowID(0),(WindowMouseX(0) & $FFFFFFFF) | (WindowMouseY(0) << 32))=GadgetID(0)
    ClickGadget(GadgetID(0))
  EndIf
Until quit
BERESHEIT