Seite 1 von 1

Abfrage der Maustasten

Verfasst: 19.10.2004 08:07
von Lebostein
Hi,

bisher hab ich die Abfrage der Maustasten immer mit den #WM_...-Konstanten gemacht, hier ein kleines Beispiel:

Code: Alles auswählen

OpenWindow(0, 0, 0, 400, 300, #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered, "Test")

CreateGadgetList(WindowID())
ImageGadget(0,50,50,100,100,CreateImage(0,100,100))

Repeat
event = WaitWindowEvent()
If event = #WM_LBUTTONDOWN: MessageRequester("Yeah!","Links!"): EndIf
If event = #WM_RBUTTONDOWN: MessageRequester("Yeah!","Rechts!"): EndIf
Until event = #WM_CLOSE
In der neuen Beta-Version 3.92 von PB scheint das aber nicht mehr so richtig zu funktionieren, es wird kein Ereignis mehr ausgelöst, wenn ich auf ein Image klicke. Fred's Kommentar und Code dazu dazu (http://purebasic.myforums.net/viewtopic ... ght=#71507):

It now returns a gadget event, as other gadgets:

Code: Alles auswählen

openWindow(0, 0, 0, 400, 300, #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered, "Test") 

CreateGadgetList(WindowID()) 
ImageGadget(0,50,50,100,100,CreateImage(0,100,100)) 

Repeat 
event = WaitWindowEvent() 
If event = #PB_Event_Gadget : MessageRequester("Yeah!","Yeah!"): EndIf 
Until event = #PB_Event_CloseWindow
Hm... kann ich nicht so viel damit anfangen. So kann man zwar rausbekommen, dass eine Maustaste gedrückt wurde aber nicht welche.
Hat jemand ne Idee?

Verfasst: 19.10.2004 10:11
von freedimension
EventType funktioniert nicht???

Verfasst: 19.10.2004 10:24
von bobobo
Try this

Code: Alles auswählen

OpenWindow(0, 0, 0, 400, 300, #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered, "Test") 

CreateGadgetList(WindowID()) 
ImageGadget(0,50,50,100,100,CreateImage(0,100,100)) 

Repeat 
event = WaitWindowEvent() 
If event = #PB_Event_Gadget : MessageRequester("","Event ..vermutlich eine linke Maustase"): EndIf
;If event = #WM_LBUTTONDOWN: MessageRequester("Yeah!","Links! Geht "): EndIf
If event = #WM_MBUTTONDOWN: MessageRequester("Yeah!","Mitte!"): EndIf
 
If event = #WM_RBUTTONDOWN: MessageRequester("Yeah!","Rechts!"): EndIf 
Until event = #WM_CLOSE