第七章 FoxPro程序设计
: c/ u5 Y9 [/ A+ j& D( x 1. 命令文件的建立、修改和运行
6 f& M3 h' z" @4 s5 P4 M# Q3 K (1) 命令文件的建立与修改MODIFY COMMAND[/?][IN WINDOW/SCREEN]
5 E- Z, F7 D9 \0 p5 ]# F+ ]4 y (2) 命令文件的执行DO0 |% |4 J1 D: ]! T) C3 {
其中SET DEVELOPMENT ON/OFF ,处于ON状态是默认,执行新的版本,处于OFF状态,则执行旧版本。
M9 a, O* d/ V% M; ~ (3)命令文件的注释NOTE * &&
3 f" A. H" ~) v6 ^- d, C& A, m7 f 2. 顺序结构程序设计
# c+ k2 G& H% a( X/ h3 D (1)CLEAR是清屏命令,SET TALK ON为默认,每执行一条命令就给出回应,RETURN是一条返回命令。
4 K% R% U! {- _7 X (2)非格式化输入命令# L/ J8 j# A3 u% m
ACCEPT [] TO 接受从键盘输入的字符型数据,输入的字符串不必用引号括起来。 只是提示作用。6 Y$ J9 Q0 M0 s' p
INPUT[] TO 接受从键盘输入的C,N,D,L等,若是字符串则必须用引号括起来。
, y/ ~0 h1 g! W" B WAIT [] TO 等待从键盘输入一个字符, 只能是提示作用。/ a5 W% Z/ Q; m( O9 T: o# U$ q
SET CONSOLE ON(默认,所有非格式化输入数据都显示)/OFF(相反)
7 m/ C- w$ N7 v% K8 Y (3)格式化输入输出命令5 }2 l3 }4 i" }+ [$ v, m6 `
格式化输出命令@ SAY [PICTURE][FONT[,]] SET DEVICE TO SCREEN 屏幕输出
/ v, y& V5 |% @; U! W. e SET DEVICE TO PRINT 打印机输出
; y, H; h3 P+ @/ A" j1 H1 y. | 格式化输入输出命令@[SAY]GET|[PICTURE][RANGE[,]]与READ合用,才能修改变量,一个READ可以修改前面多个@…GET的变量值,通常SAY只是提示作用。3 l; j R @1 c
定义文本编辑区
# M0 i/ F( a9 K2 k/ p- W @EDITSIZE,[FONT[,]][SCROLL]通过READ编辑,主要是对备注字段起作用。, z8 R2 w: H. ], c1 l$ P
清屏命令
3 P u; U& I% e+ ]% f* B& l CLEAR清除整个屏幕/ K1 j7 e3 Y5 ~( r; q
@7 ?" ?' U! [5 T1 P
[PARAMETERS]
8 @' t& l, V; l3 x; {% Y% ` a3 V. ] A3 O& u4 H9 I! w) N
RETURN[TO MASTER]
- L& J7 p: t3 M/ ]5 S5 D3 x 其中[TO MASTER]在嵌套中使用,含有[PARAMETERS]为有参过程。/ p4 o' Q) t6 E8 ~1 q( M
(2)过程文件建立PROCEDURE# S6 @/ {; X' d$ O
, p+ H7 D1 q3 @3 {8 [+ g3 @% F1 d
RETURN% i5 `% L% Y( i0 f( |
…………
* X. F2 s4 @& Z# i 过程文件的打开和关闭SET PROCEDURE TO []! a# J1 O1 B; M% ~7 Q4 m( P
CLOSE PROCEDURE0 q6 Q+ a; I% O& D3 `
(3)过程的调用DO [WITH] ~+ j0 N5 R, V# _9 x; \
(4)变量的作用域
' a) h5 f* c) d% I 全局变量PUBLIC+ t0 A# q+ q: q7 N! i3 b3 i
局部变量:未经PUBLIC定义的
8 ~- b& E. i' H, L' Q PRIVATE
, T, W% I9 k E, o% n PRIVATE ALL [LIKE|EXCEPT]隐藏指定的内存变量,避免同名变量/ n; q9 u% I" d3 {& b, M( S1 _$ L2 |
(5)定义自定义函数FUNCTION: s I* [# k# O
[PARAMETERS]5 ^% L# D! V: X" i$ b
4 a( J7 x) w8 Q RETURN- V1 t" I% }9 M s P7 ]
自定义函数的调用:函数名([])
f4 U+ d- J: U 参数传递方式 SET UDFPARMS TO [VALUE|REFERENCE]若选用VALUE为值传递(默认),不会改变变量的值,若REFERENCE,则为引用方式。 |