More Newby Questions
Dave Cragg
dcragg at lacscentre.co.uk
Mon Jan 16 19:06:45 EST 2006
On 16 Jan 2006, at 23:02, Ben Bock wrote:
> I have a timed quiz spread across several cards, each card has a
> "Next Page" button. The quiz starts with a button.
>
> To start the quiz, a button has:
>
> on mouseUp
> startTimer
> go next
> end mouseUp
>
>
> The card script has:
>
>
> on startTimer
> send timesUp to me in 120 seconds
> end startTimer
>
> on timesUp
> go card "Finish Card"
> end timesUp
>
It's probably better to place these handlers in the stack script.
(see below)
Here are two possible approaches:
1.
In the stack script:
---------------------------------------
local sTimerOn
on startTimer
put true into sTimerOn
send timesUp to me in 120 seconds
end startTimer
on timesUp
if sTimerOn then
go card "Finish Card"
end if
end timesUp
on NeverMind
put false into sTimerOn
end NeverMind
----------------------------------
2.
In the stack script:
---------------------------------------
local sTimerID
on startTimer
send timesUp to me in 120 seconds
put the result into sTimerID
end startTimer
on timesUp
go card "Finish Card"
end timesUp
on NeverMind
cancel sTimerID
end NeverMind
----------------------------------
In both cases, the two mouseUp handlers you currently have should
work fine.
Note that it's important that the "script local" variables (sTimerID
or sTimerOn) are declared outside the handlers. In this way they can
be be shared by all the handlers in the stack script.
Cheers
Dave
More information about the use-livecode
mailing list