一个foxbase的打印进度彩条显示程序
JX的库中有序号、测深、井斜、方位、水平位移等字段。
***打印井斜数据程序***
SET TALK OFF
SET SCOR OFF
SET STAT OFF
SET ESCA ON
SET COLOR TO W/B+
CLEAR
use JX
??SYS(2002)&&关光标
DO WHILE .not. eof()
@8,25 say '正在打印请稍等'
SET COLO TO 2/B+
@13,6 SAY '打印信息提示'
SET COLO TO 6/B+
@13,20 SAY '共有:'+STR(RECC(),3)+'个记录'+',已完成:'
@16,16 TO 18,64&&画彩条矩型框
set device to print
@PROW()+2,10 SAY "'@D'"
@PROW(),23 say "井井斜数据计算表"
@PROW()+1,13 SAY "'@A'~~~~~~~~~~"
@PROW()+1,2 SAY "测深井斜方位 水平位移"
@PROW()+1,2 SAY "序"
@PROW()+1,2 SAY "号"
@PROW()+1,2 SAY "(米) (度) (度) (米)"
@PROW()+1,2 SAY ""
X=PROW()+1
n=1
DO WHILE .not. eof()
if .not. eof()
SET DEVICE TO SCREE
@13,43 SAY STR(RECN(),3)+'个记录'
@13,53 SAY ',还剩:'+STR((RECC())-RECN()),3+'个记录'
i1=recc()
set colo to B+/GR+&&设制彩条艳色
i2=recn()
i3=(50/i1)*i2
@17,17 clear to 17,13+i3
SET COLO TO W/B+
SET DEVICE TO PRINT
@X,4 SAY 序号
@X,10 SAY 测深
@X,18 SAY 井斜
@X,28 SAY 方位
@X,46 SAY 水平位移
skip
X=X+1
ENDIF
enddo
ENDDO
use
@X+11,2 SAY ''
??SYS(2002,1) &&开光标
SET DEVICE TO SCREEN
retu
在打印过程中每打印一个记录,彩条就前进一个单位,很象一些软件安装过程中的彩条指示。利用此方法同样可用在数据库的输入指示中(采用自己制作的屏幕格式向数据库中输入记录时)。