ScrollareaGadget -Kein #WM_HSCROLL, #WM_VSCROLL ?

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

ScrollareaGadget -Kein #WM_HSCROLL, #WM_VSCROLL ?

Beitrag von PBZecke »

Hallo!

Ich würde gerne die Scrollpositionen eines ScrollareaGadgets abfragen, aber es sendet kein #WM_HSCROLL 'WM_VSCROLL. Jedenfalls bei mir nicht. Mach ich etwas falsch, oder gibt es eine andere Methode?

Code: Alles auswählen

; PureBasic Visual Designer v3.90 build 1360


;- Window Constants
;
Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
;
Enumeration
  #ScrollArea_0
EndEnumeration


Procedure Open_Window_0()
  If OpenWindow(#Window_0, 216, 30, 600, 300,  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered , "New window ( 0 )")
    If CreateGadgetList(WindowID())
      
      ;-
      ScrollAreaGadget(#ScrollArea_0, 20, 20, 540, 260, 1080, 520, 10)
      CloseGadgetList()
      
    EndIf
  EndIf
EndProcedure

Open_Window_0()


Procedure WindowCallBack(WindowID, Message, wParam, lParam)
    Result = #PB_ProcessPureBasicEvents
    
    If Message =#WM_HSCROLL 
       Debug 1
    EndIf   
     

    ProcedureReturn Result
EndProcedure

SetWindowCallback(@WindowCallBack()) 


Repeat
  
  Event = WaitWindowEvent()
  
  If Event = #PB_EventGadget
    
    ;Debug "WindowID: " + Str(EventWindowID())
    
    GadgetID = EventGadgetID()
    
    If GadgetID = #ScrollArea_0
      Debug "GadgetID: #ScrollArea_0"
      
    EndIf
    
  EndIf
  
Until Event = #PB_EventCloseWindow

End
;
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Benutzeravatar
dige
Beiträge: 1246
Registriert: 08.09.2004 08:53

Beitrag von dige »

Die Scrollposition kannst Du zur Zeit nur per API abfragen:

Code: Alles auswählen

 GetScrollPos_( GadgetID(), #SB_HORZ )
 GetScrollPos_( GadgetID(), #SB_VERT )
cya dige
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag von PBZecke »

Ja, aber ich brauch doch ein Event das ausgelöst wird, wenn jemand am Scroller rumsspielt.

Werd's mal mit Mousedown probieren...

Danke!
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Antworten