
HomePage | Optical Illusions | War Stories | QBasic | Dads Navy Days | Bristol | Bristol, USA | Bristol, Canada | Terre Haute | Miscellany | Web Stuff | About Ray | Site Map | Site Search | Messages | Credits | Links | Web Rings
QBasic | Errors | 40lb Weight | Bits | Chance | Colours | Dates | Delays | File Dialog | Files | Input | Matching | Menus | Mouse | Numbers | SeqNo | SIRDS | Sorts | Text | Timer | DLoads
Delays - slowing or pausing a program
Sometimes you may want to slow or pause your program. There are four ways this can be done.
Use TIMER, this is a good method for pausing or slowing down a program to intervals of around a quarter of a second.
SLEEP, a method of pausing a program for a whole number of seconds. Useful when displaying "splash" screens.
Do nothing loops, loops that simply count to a number then exit. This is not generally a good programming practice, but is an option. When using this method the results vary from computer to computer, but it is easy to implement.
WAIT, a method of introducing a very small delay into a program. The &H3DA, 8 part waits for a screen refresh.
'Delay.bas Ray Thomas April 2002
'Program to demonstrate delays
DIM Text AS STRING 'Text to print
DIM Count AS INTEGER 'Loop counter
DIM Start AS SINGLE 'Timer variable
Text$ = "Ray wrote this"
CLS
PRINT
PRINT "Example using a TIMER delay"
PRINT
TIMER ON
FOR Count = 1 TO LEN(Text$)
Start = TIMER
PRINT MID$(Text$, Count, 1);
DO
LOOP UNTIL TIMER > Start + .3
NEXT Count
TIMER OFF
PRINT
PRINT
PRINT
PRINT "Example using a SLEEP delay"
PRINT
FOR Count = 1 TO LEN(Text$)
PRINT MID$(Text$, Count, 1);
SLEEP 1
NEXT Count
PRINT
PRINT
PRINT
PRINT "Example using a delay loop"
PRINT
FOR Count = 1 TO LEN(Text$)
Start = 0
PRINT MID$(Text$, Count, 1);
DO
Start = Start + 1
LOOP UNTIL Start = 100000
NEXT Count
PRINT
PRINT
PRINT
PRINT "Example using a WAIT delay"
PRINT
FOR Count = 1 TO LEN(Text$)
PRINT MID$(Text$, Count, 1);
WAIT &H3DA, 8
WAIT &H3DA, 8, 8
NEXT Count
END
Pausing a program until the user presses a key, or a combination of keys, is covered in on my Inputs page.
The programs on this page, like all the programs written for this site, can be downloaded from the DLoads page.
QBasic | Errors | 40lb Weight | Bits | Chance | Colours | Dates | Delays | File Dialog | Files | Input | Matching | Menus | Mouse | Numbers | SeqNo | SIRDS | Sorts | Text | Timer | DLoads
HomePage | Optical Illusions | War Stories | QBasic | Dads Navy Days | Bristol | Bristol, USA | Bristol, Canada | Terre Haute | Miscellany | Web Stuff | About Ray | Site Map | Site Search | Messages | Credits | Links | Web Rings