Seite 1 von 3
Doppelklick auf Button?
Verfasst: 30.05.2007 19:09
von PureBasic4.0
Hi, Leute
ich möchte abfragen, ob auf einen Button einfach oder zweifach geklickt worden ist. Gibt es dafür schon einen bereits fertigen Befehl? Ich möchte es nämlich nicht so wie damals machen, als ich den Val Befehl noch nicht kannte.
Beispielcode:
Code: Alles auswählen
Repeat
a + 1
if GetGadgetText(#String_0) = a
Ergebnis = a
break
endif
ForEver
Dieser Code ist nicht zum Nachmachen gedacht
Verfasst: 30.05.2007 19:12
von Kaeru Gaman
ich weiß nicht, ob ein button ein doubleclick-event unterstützt.
das mag ich mal bezweifeln.
...aber jetzt so unmotiviert einen schlechtes-beispiel-code zu posten...
mensch, du bis doch echt ma urlaubsreif, meinst nich?
Verfasst: 30.05.2007 19:13
von PureBasic4.0
Kaeru Gaman hat geschrieben:mensch, du bis doch echt ma urlaubsreif, meinst nich?
Ich bin schon in Urlaub. Es sind Ferien, ich habe ganze Nacht programmiert, bin jetzt totmüde und arbeite trotzdem weiter.
Zurück zum Thema:
Alternativ könnte ich ja auch beim Klick auf das Gadget einen Timer laufen lassen. Und wenn der nicht abgelaufen ist, wenn man das zweite mal auf den Timer drückt, soll das Event ausgelöst werden. Wenn der Timer Timedout ist, soll der das vergessen. Wie findest du den Weg?
Verfasst: 30.05.2007 19:13
von hardfalcon
//EDIT: Die EG-Gesundheitsminister warnen: Programmieren über mehrere Tage hinweg mit schlaf- und Essensentzug verursacht Bauchkrämpfe, Übelkeit, Benommenheit und Impotenz! Am Besten, Sie fangen gar nicht erst damit an...
//EDIT2: Auch die EG-Innenminister schreiben Benommenheit mit großem B...

Verfasst: 30.05.2007 19:25
von Kaeru Gaman
> verursacht Bauchkrämpfe, Übelkeit, benommenheit und Impotenz!
du hast den Realitätsverlust vergessen. hardcore proggen is schlimmer als durchsaufen.
Verfasst: 30.05.2007 20:00
von PureBasic4.0
Kaeru Gaman hat geschrieben:> verursacht Bauchkrämpfe, Übelkeit, benommenheit und Impotenz!
Hab ich aber alles nicht. Ich werde heut mal eher ins Bett gehen
Verfasst: 30.05.2007 20:04
von Kaeru Gaman
du zitiers ja scho nimmer rischtisch...
isch selbs hab doch scho Hardfalcon zitiert, ey...
yo, geh penne, moje is eneuer dach....
Verfasst: 30.05.2007 20:34
von hjbremer
ein Beispiel für EventType()
Code: Alles auswählen
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Gadget
welcherButton=EventGadget()
Select welcherButton
Case #listiconGadget_nr
listevent=EventType()
Select listevent
Case 0 ;linke Maustaste
Case 1 ;rechte Maustaste
Case 2 ;linke Maustaste Doppelklick
EndSelect
EndSelect ;von welcherButton
EndIf ;von EventID
Until EventID = #PB_Event_CloseWindow
oder F1 drücken
funktioniert leider nicht mit Buttongadget wie ich dachte
Verfasst: 30.05.2007 20:43
von PureBasic4.0
ok. danke
Verfasst: 30.05.2007 23:04
von zigapeda
EventType wird aber von dem Buttongadget nicht unterstützt wie Kaeru schon gesagt hat:
Code: Alles auswählen
OpenWindow(0,200,200,200,200,"test")
CreateGadgetList(WindowID(0))
ButtonGadget(0,10,10,180,180,"test")
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
quit=1
Case #PB_Event_Gadget
If EventGadget() = 0
Select EventType()
Case #PB_EventType_RightClick
Debug "rechts"
Case #PB_EventType_LeftClick
Debug "links"
Case #PB_EventType_RightDoubleClick
Debug "rechts doppel"
Case #PB_EventType_LeftDoubleClick
Debug "links doppel"
EndSelect
EndIf
EndSelect
Until quit
End