David
Try this snippet and watch the results. Since we only have two
options of getting this to work time wise. Checking the result
once a second, or on a continous effort like the code you first
presented, but most if not all systems would never be able to
refresh the screen fast enough for the way you were doing it.
MAYBE we could get Razzak to provide us with some kind of LESS
than a SECOND timer or a another glorious way to do this.
CLS
--PAUSE 2 USING 'Counting from 1 to 50000; now on 10000' AT 5 10
SET VAR vm_starttime TIME
SET VAR vm_starttime = (.#TIME)
SET VAR vm_timeplussec TIME
SET VAR vm_timeplussec = (.vm_starttime + 1)
PAUSE 3 USING 'Counting from 1 to 500000; now on 0 ' AT 5 10
SET VAR von = 0
WHILE von < 500000 THEN
SET VAR von = (.von + 1)
SET VAR vm_starttime = (.#TIME)
IF vm_starttime = .vm_timeplussec THEN
--WRITE .vmessage AT 20 2
SET VAR vmessage = ('Counting from 1 to 500000; now on'&(CTXT(.von)) )
PAUSE 4 USING .vmessage
SET VAR vm_timeplussec = (.vm_starttime + 1)
ENDIF
ENDWHILE
CLS
RETURN
Jim Limburg
--- "David M. Blocker" <[EMAIL PROTECTED]> wrote:
> Razzak
>
> Help! What am I missing?
>
> I was so excited about the PAUSE 3 and PAUSE 4 that I tried to apply it to
> program I'm writing that needed a counter. Here is a small demo file:
>
> cls
> pause 2 using 'Counting from 1 to 10000; now on 10000' at 5 10
>
> pause 3 using 'Counting from 1 to 10000; now on 0' at 5 10
>
> set var von = 0
> while von < 10000 then
> set var von = (.von + 1)
> set var vmessage = ('Counting from 1 to 10000; now on'&(ctxt(.von)) )
> write .vmessage at 20 2
> pause 4 using .vmessage
> endwhile
>
> I include the PAUSE 2 at the top for contrast. When I run this in R:Base
> (tried it on build 1.850 and the beta, 1.854, both on a Dell Windows 98
> portable and Dell Windows XP desktop), I get two problems:
>
> 1. The screen does a big time flicker with the PAUSE 4
> 2. The counter doesn't show on the right! All I get is
> "Counting from 1 to 10000; now on" in the box
>
> I include the WRITE command to show that there's nothing wrong with the
> variable vMessage - WRITE shows the progression just fine.
>
> David Blocker
>
> ----- Original Message -----
> From: "A. Razzak Memon" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Thursday, June 13, 2002 12:14 PM
> Subject: Re: Another novice form question - Razzak's Reply
>
>
> >
> > Bob,
> >
> > A new option of PAUSE 4 has been added in The Glorious R:BASE
> > 2000 (ver 6.5++) for Windows.
> >
> > There are cases when you would like to display any message using
> > PAUSE 3 command and continue processing things behind the scene.
> > If you also have to display any progress notes, etc., without flicker,
> > now you can use the option of PAUSE 4.
> >
> > The new PAUSE 4 works just like PAUSE 3 except than instead of
> > painting a new dialog box with the message it will use the existing
> > displayed PAUSE 3 box and just redo the message inside the box.
> > This can be used to eliminate flicker for those times when you are
> > using PAUSE 3 to display progress in an application.
> >
> > Example:
> >
> > -- LoopD.RMD To Demonstrate the Use of PAUSE 3 and PAUSE 4
> >
> > CLEAR ALL VAR
> > SET CAPTION ' '
> > SET VAR v1 TIME
> > SET VAR v1 = (.#Time)
> > SET VAR v2 TIME
> > SET VAR v2 = (.v1 + 5)
> > SET VAR v3 TIME
> > SET VAR v3 = (.v1 + 1)
> > SET VAR MsgNum INTEGER = 1
> >
> > CLS
> > PAUSE 3 USING 'Wait for this to quit...' CAPTION 'Demo of New PAUSE 4
> > Option ...'
> >
> > WHILE v1 < .v2 THEN
> > SET VAR v1 = (.#time)
> > IF v1 = .v3 THEN
> > SWITCH (.MsgNum)
> > CASE 1
> > PAUSE 4 USING 'Hello'
> > BREAK
> > CASE 2
> > PAUSE 4 USING 'Developers ...'
> > BREAK
> > CASE 3
> > PAUSE 4 USING 'Check'
> > BREAK
> > CASE 4
> > PAUSE 4 USING 'This'
> > BREAK
> > CASE 5
> > PAUSE 4 USING 'Out ...'
> > BREAK
> > ENDSW
> > SET VAR MsgNum = (.MsgNum + 1)
> > SET VAR v3 = (.v1 + 1)
> > ENDIF
> > ENDWHILE
> > CLEAR ALL VAR
> > RETURN
> >
> > For more details and examples: http://www.RSyntax.com
> >
> > Enjoy and make sure to have fun!
> >
> > Very Best Regards,
> >
> > Razzak.
> >
> > At 11:59 AM 6/13/2002 -0500, Bob Thompson wrote:
> >
> > >I want to display a "count down" counter
> > >on a form while the app is processing a
> > >somewhat large data set. I have a push button
> > >on the form that executes the program and
> > >I want the form to display something like :
> > > "Processing record# 20 of 10000"
> > >
> > >This app may take 1-2 minutes to completely
> > >execute and this is feed back to the user.
> > >
> > >I have tried the SCREEN RESTORE, WRITE
> > >and RECALC commands, but cannot get the
> > >form to show updated variables until the procedure
> > >has finished. (It is then a moot point of course!)
> > > I do not want to use the FEEDBACK option as
> > > I would like more control over what and
> > >how the counter is displayed.
> > >
> > >You all have been very helpful and I appreciate
> > >the assistance. Again, simply how do you
> > >get a variable to redisplay at will on a form
> > >while you are performing a WHILE LOOP or
> > >DECLARE CURSOR ?
> >
> >
> > ================================================
> > TO SEE MESSAGE POSTING GUIDELINES:
> > Send a plain text email to [EMAIL PROTECTED]
> > In the message body, put just two words: INTRO rbase-l
> > ================================================
> > TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
> > In the message body, put just two words: UNSUBSCRIBE rbase-l
> > ================================================
> > TO SEARCH ARCHIVES:
> > http://www.mail-archive.com/rbase-l%40sonetmail.com/
> >
>
>
> ================================================
> TO SEE MESSAGE POSTING GUIDELINES:
> Send a plain text email to [EMAIL PROTECTED]
> In the message body, put just two words: INTRO rbase-l
> ================================================
> TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
> In the message body, put just two words: UNSUBSCRIBE rbase-l
> ================================================
> TO SEARCH ARCHIVES:
> http://www.mail-archive.com/rbase-l%40sonetmail.com/
__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
================================================
TO SEE MESSAGE POSTING GUIDELINES:
Send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: INTRO rbase-l
================================================
TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: UNSUBSCRIBE rbase-l
================================================
TO SEARCH ARCHIVES:
http://www.mail-archive.com/rbase-l%40sonetmail.com/