在QBASIC中实现动画清屏

Author: 刘树玉 Date: 1997-01-01

  大家都知道,QBASIC有一个VIEW [SCREEN](X1,Y1)-(X2,Y2)[,窗口底色][,边界颜色]语句来设置指定区域为图形视见窗。我们利用这一功能就可以实现从左到右、从大小到、从小到大、百叶窗式等等各种清屏方式,现举从左到右和从小到大两例加以说明:
  1.用cls清除屏幕
  2.用SCREEN定义屏幕模式。由于模式12的图形规格为640×480,字符规格为8×16的小字符,在这种模式下作出的图形和写出的字符比较漂亮,故本例选用模式12。
  3.利用VIEW [SCREEN]语句编程。根据本人的习惯,可以用STEP来设置显示速度,本例为2;由于屏幕的宽高比为640÷480=1.33,故在程序中用系数1.33来控制纵横坐标的比例,使其纵横坐标清屏达到同步,不至于溢出。
  4.程序清单如下:
  cls
  screen 12
  rem 从小到大清除屏幕
  for i=1 to 239
  view screen (320-i*1.33,240-i)-(320+i*1.33,240+i),3,2
  next i
  rem 从左到右清除屏幕
  for i=1 to 638 step 2
  view screen (i,1)-(i+1,479),1
  next i
  同理,我们利用上面的方法还可以编制出各种各样的清屏方案。