EventGadgetID() reseten

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
sen-me
Beiträge: 478
Registriert: 17.07.2005 16:02
Wohnort: Saarbrücken
Kontaktdaten:

EventGadgetID() reseten

Beitrag von sen-me »

Code: Alles auswählen

Repeat
 EventID=WaitWindowEvent()
 If EventID=13100
  Select EventGadgetID()
   Case 0
    SetGadgetState(0,UseImage(1))
    SetGadgetState(1,UseImage(2))
   Case 1
    SetGadgetState(0,UseImage(0))
    SetGadgetState(1,UseImage(3))
   Default
    SetGadgetState(0,UseImage(0))
    SetGadgetState(1,UseImage(2))
  EndSelect
 EndIf
Until EventID=16
also mir ist klar das es JETZT nur dann sich ändert wenn ein gadget ein ereignis kriegt.
doch wenn ich nach repeat gleich mal eventgadgetid() schreibe, dann hat diese immer noch z.b. die zahl 1

gibts ne möglichkeit diese wieder auf 0 zu setzen?
Benutzeravatar
Laurin
Beiträge: 1639
Registriert: 23.09.2004 18:04
Wohnort: /dev/eth0

Beitrag von Laurin »

EventGadgetID() ändert sich nur dann, wenn auch wirklich was mit einem Gadget passiert.
AFAIK kann der Wert nur durch WindowEvent/WaitWindowEvent verändert werden.
Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Code: Alles auswählen

Repeat
 GadgetID = 0
 EventID=WaitWindowEvent()
 If EventID=13100
 GadgetID = EventGadgetID()
  Select GadgetID 
   Case 0
    SetGadgetState(0,UseImage(1))
    SetGadgetState(1,UseImage(2))
   Case 1
    SetGadgetState(0,UseImage(0))
    SetGadgetState(1,UseImage(3))
   Default
    SetGadgetState(0,UseImage(0))
    SetGadgetState(1,UseImage(2))
  EndSelect
 EndIf
Until EventID=16
Die Funktion EventGadgetID() kannste nicht beeinflussen, wozu auch. Eine Hilfsvariable kannste manipulieren, aber es macht Ehrlich gesagt überhaupt keinen Sinn :freak:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
sen-me
Beiträge: 478
Registriert: 17.07.2005 16:02
Wohnort: Saarbrücken
Kontaktdaten:

Beitrag von sen-me »

doch wenn man z.b. durch ein klick ein imagegadget ändern will (solange es gedrückt ist) und wenn man nicht mehr drückt oder nicht mehr über dem imagegadgetist soll er wiede rin normal zustand
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Dafür brauchste ein Callback, wo Du #wm_lbuttondown und #wm_lbuttonup bearbeiten kannst. Such mal nach Callback
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten