Page 1 of 1
Posted: Sun Jun 02, 2002 3:55 pm
by BackupUser
Restored from previous forum. Originally posted by devices.
Hi
whilst I still have some hair left, could someone please point me in the right direction.
I am trying to give values to a series of variables using a onscreen "keypad".
The codeing I think should go something like this:-
keypad:
If WaitWindowEvent()=#PB_EventGadget And EventGadgetID()=30:a=1:c=1:EndIf
If WaitWindowEvent()=#PB_EventGadget And EventGadgetID()=30:b=1:c=0:EndIf
Return
This is just an example.
I want to give a=1 on the first click of "ButtonGadget" 30 and b=1 on the next click.
However what I get is a=1 on the first click, but nothing on the second.
What am I doing wrong?
Thanks Richard
Posted: Sun Jun 02, 2002 4:10 pm
by BackupUser
Restored from previous forum. Originally posted by PB.
> If WaitWindowEvent()=#PB_EventGadget And EventGadgetID()=30:a=1:c=1:EndIf
> If WaitWindowEvent()=#PB_EventGadget And EventGadgetID()=30:b=1:c=0:EndIf
>
> I want to give a=1 on the first click of "ButtonGadget" 30 and b=1 on the next click.
> However what I get is a=1 on the first click, but nothing on the second.
That's because the second line (b=1) never gets seen because WaitWindowEvent is
called twice. I haven't tested it, but try an approach like this instead:
Code: Select all
If WaitWindowEvent()=#PB_EventGadget And EventGadgetID()=30
If a=0 : a=1 : c=1 : EndIf
If a=1 : b=1 : c=0 : EndIf
EndIf
PB - Registered PureBasic Coder
Posted: Sun Jun 02, 2002 10:26 pm
by BackupUser
Restored from previous forum. Originally posted by devices.
Thanks PB
However this gives a=1 and b=1 on a single click!
Is there any rule as to how close together "WaitWindowEvents" can be in a sub group?
All the best
Richard
Posted: Sun Jun 02, 2002 10:43 pm
by BackupUser
Restored from previous forum. Originally posted by Paul.
Check in the oposite order...
If a=1 : b=1 : c=0 : EndIf
If a=0 : a=1 : c=1 : EndIf
Posted: Mon Jun 03, 2002 1:26 am
by BackupUser
Restored from previous forum. Originally posted by devices.
Thanks for the input Paul
However this gives a=1 c=1 on the first click and nothing on the second.
May be I'm asking to much of PB.......strange as I could do this back in the 80's when I first used "Basic".
All the best Richard
Posted: Mon Jun 03, 2002 1:59 am
by BackupUser
Restored from previous forum. Originally posted by PB.
> However this gives a=1 and b=1 on a single click!
Oops, my mistake (I didn't test it, as mentioned). Do this instead:
Code: Select all
If WaitWindowEvent()=#PB_EventGadget And EventGadgetID()=30
If a=0
a=1 : c=1
ElseIf a=1
b=1 : c=0
EndIf
EndIf
> Is there any rule as to how close together "WaitWindowEvents" can be in a sub group?
Each time WaitWindowEvent is called, it cancels the values of the previous call.
In other words, EventGadgetID in the second call is different to the first.
PB - Registered PureBasic Coder