第 6章 循环结构设计第 6章 循环结构设计
6.1 循环结构语句
6.2 列表框与组合框控件
6.3 页框第 6章 循环结构设计
6.1 循环结构语句在 Visual FoxPro 中,提供了 三种循环 语句,DO
WHILE,.,ENDDO( 当型循环 ),FOR,.,ENDFOR( 步长型循环 ),SCAN,.,ENDSCAN( 表扫描型循环 ) 。
无论何种类型的循环结构,其特点都是:循环体执行与否及其执行次数多少都必须视其循环类型与条件而定,
且必须确保循环体的重复执行能在适当的时候得以终止
(即非死循环)。
第 6章 循环结构设计
6.1.1 当型循环语句 DO WHILE
1,当型循环的语法格式如果需要在某一条件满足时反复执行某一操作,可以使用当型循环 ( DO WHILE) 结构 。
当型循环的语法格式为:
DO WHILE〈 条件 〉
[〈 命令列 〉 ]
[EXIT]
[LOOP]
ENDDO
第 6章 循环结构设计说明:
(1) 如果 〈 条件 〉 的值为,T.,则执行 DO WHILE和
ENDDO之间的循环体;如果 〈 条件 〉 的值为,F.,则结束循环,转去执行 ENDDO之后的命令 。
每执行一遍循环体,程序自动返回到 DO WHILE语句,判断一次 〈 条件 〉 。
(2) EXIT是无条件结束循环命令 。
(3) LOOP是无条件循环命令 。
第 6章 循环结构设计
2,当型循环结构的特点
“当型”循环结构的根本特点是:当所给定循环条件为真时,就反复执行其循环体;当该条件为假时,
终止执行其循环体,执行其后继命令。循环体执行次数最少可为零。
第 6章 循环结构设计
6.1.2 步长型循环命令 FOR
1,步长型循环语句步长型循环可以 根据给定的次数重复执行循环体 。
其语法结构为:
FOR 〈 内存变量 〉 =〈 初值 〉 TO〈 终值 〉 [STEP
〈 步长值 〉 ]
[〈 命令列 〉 ]
[EXIT]
[LOOP]
ENDFOR | NEXT
第 6章 循环结构设计说明:
(1) EXIT跳出 FOR...ENDFOR循环 。
(2) LOOP将控制直接转回到 FOR子句 。
(3) 在使用循环嵌套时要注意:内外循环的循环变量不能同名,并且内外循环不能交叉。如第 6章 循环结构设计
E N D F O R
E N D F O R
YF O R
XF O R
E N D F O R
E N D F O R
Y F O R
X F O R
正确 错误第 6章 循环结构设计
2,步长型循环的执行过程循环的执行过程是:开始时首先把 〈 初值 〉,
〈 终值 〉 和 〈 步长值 〉 读入,然后 〈 内存变量 〉 的值与 〈 终值 〉 比较,如果 〈 内存变量 〉 的值在 〈 初值 〉
与 〈 终值 〉 范围内,则执行 FOR与 ENDFOR之间的命令,然后 〈 内存变量 〉 按 〈 步长值 〉 增加或减小,重新比较,直到 〈 内存变量 〉 的值不在 〈 初值 〉 与 〈 终值 〉 范围内,结束循环,转去执行 ENDFOR后面的第一条命令。
第 6章 循环结构设计
6.2 列表框与组合框控件列表框和组合框为用户提供了包含一些选项和信息的可滚动列表。在列表框中,任何时候都能看到多个项,而在组合框中,平时只能看到一个项,用鼠标单击向下按钮可以看到多项的列表。
第 6章 循环结构设计
6.2.1 列表框列表框( ListBox)显示一个项目列表,用户可以从中选择一项或多项,但不能直接编辑列表框中的数据。当列表框不能同时显示所有项目时,它将自动添加滚动条,使用户可以上下或左右滚动列表框,以查阅所有选项。
第 6章 循环结构设计
1,列表框的常用属性表 6-1 常用列表框属性属性 说 明
List
设置或返回列表中选项,使用 List属性可以得到列表中的任何选项。例如,List1.List(1)表示列表框 List1中第 2项的值
Value 列表中当前选项的值
ListCount 列表框中的选项个数
ListIndex 当前选项的索引号,如果没有选项被选中,该属性为 0
Selected
在程序运行时,使用代码来选定列表中的选项,例如,
THISFORM.List1.Selected(3) =,T.表示选中列表框 List1中的第 3条选项
ColumnCou
nt 列表框的列数第 6章 循环结构设计
2,列表框的常用方法表 6-2 常用列表框方法方法程序 说 明
AddItem 给 RowSourceType属性为 0的列表添加一项
Clear 清除列表中的各项
RemoveItem 从 RowSourceType属性为 0的列表中删除一项第 6章 循环结构设计
3,显示文件目录利用列表框可以设计显示文件目录的程序,并且可以在目录列表中方便地选定文件。
第 6章 循环结构设计
6.2.2 组合框
VFP中有两种形式的组合框,即下拉组合框和下拉列表框,通过更改控件的 Style属性可选择所需要的形式 。
(1) 下拉列表框:当 Style属性为 2的组合框控件 。与 列表框一样,为用户提供了包含一些选项和信息的可滚动列表。在列表框中,任何时候都能看到多个项;而在下拉列表中,只能看到一个项,用户可单击向下按钮来显示可滚动的下拉列表框。
第 6章 循环结构设计
(2) 下拉组合框:当 Style属性默认为 0的组合框控件。它兼有列表框和文本框的功能。用户可以单击下拉组合框上的按钮查看选择项的列表,也可以直接在按钮旁边的框中直接输入一个新项。
第 6章 循环结构设计
1,组合框的常用属性表 6-5 组合框的常用属性属性 说 明
InputMask 对于下拉组合框,指定允许键入的数值类型
Style 指定组合框是下拉组合框还是下拉列表框第 6章 循环结构设计
2,下拉列表框如果想节省表单上的空间,并且希望强调当前选定的项,可以使用下拉列表框 。
3,下拉组合框下拉组合框看起来象是在标准的文本框右边加了个下拉箭头,用鼠标单击该箭头就在文本框下打开一个列表 。 用户从中选择一个选项,该选项就会进入文本框 。
下拉组合框能实现上述表单中的文本框和下拉列表框的组合功能,即允许用户既可以输入数据又可以从列表中选择数据。
第 6章 循环结构设计
6.3 页框页框是一个可包含多个页面的容器控件,其中的页面又可包含各种控件 。 常用于需要多个数据显示的情况下,使用它,可以往前或往后,翻页,,而不需编写另外的程序 。
页框架( PageFrame)刚被创建时,只有两个“页面”( Page),PageCount属性用来设置页面数。
第 6章 循环结构设计
6.3.1 带选项卡的表单使用页框和页面,可以创建带选项卡的表单或对话框,比如“选项”对话框。
第 6章 循环结构设计
6.3.2 不带选项卡的表单也可以将页框设置为不带选项卡的形式。这时,
可以利用选项组或命令按钮组来控制页面的选择。
6.1 循环结构语句
6.2 列表框与组合框控件
6.3 页框第 6章 循环结构设计
6.1 循环结构语句在 Visual FoxPro 中,提供了 三种循环 语句,DO
WHILE,.,ENDDO( 当型循环 ),FOR,.,ENDFOR( 步长型循环 ),SCAN,.,ENDSCAN( 表扫描型循环 ) 。
无论何种类型的循环结构,其特点都是:循环体执行与否及其执行次数多少都必须视其循环类型与条件而定,
且必须确保循环体的重复执行能在适当的时候得以终止
(即非死循环)。
第 6章 循环结构设计
6.1.1 当型循环语句 DO WHILE
1,当型循环的语法格式如果需要在某一条件满足时反复执行某一操作,可以使用当型循环 ( DO WHILE) 结构 。
当型循环的语法格式为:
DO WHILE〈 条件 〉
[〈 命令列 〉 ]
[EXIT]
[LOOP]
ENDDO
第 6章 循环结构设计说明:
(1) 如果 〈 条件 〉 的值为,T.,则执行 DO WHILE和
ENDDO之间的循环体;如果 〈 条件 〉 的值为,F.,则结束循环,转去执行 ENDDO之后的命令 。
每执行一遍循环体,程序自动返回到 DO WHILE语句,判断一次 〈 条件 〉 。
(2) EXIT是无条件结束循环命令 。
(3) LOOP是无条件循环命令 。
第 6章 循环结构设计
2,当型循环结构的特点
“当型”循环结构的根本特点是:当所给定循环条件为真时,就反复执行其循环体;当该条件为假时,
终止执行其循环体,执行其后继命令。循环体执行次数最少可为零。
第 6章 循环结构设计
6.1.2 步长型循环命令 FOR
1,步长型循环语句步长型循环可以 根据给定的次数重复执行循环体 。
其语法结构为:
FOR 〈 内存变量 〉 =〈 初值 〉 TO〈 终值 〉 [STEP
〈 步长值 〉 ]
[〈 命令列 〉 ]
[EXIT]
[LOOP]
ENDFOR | NEXT
第 6章 循环结构设计说明:
(1) EXIT跳出 FOR...ENDFOR循环 。
(2) LOOP将控制直接转回到 FOR子句 。
(3) 在使用循环嵌套时要注意:内外循环的循环变量不能同名,并且内外循环不能交叉。如第 6章 循环结构设计
E N D F O R
E N D F O R
YF O R
XF O R
E N D F O R
E N D F O R
Y F O R
X F O R
正确 错误第 6章 循环结构设计
2,步长型循环的执行过程循环的执行过程是:开始时首先把 〈 初值 〉,
〈 终值 〉 和 〈 步长值 〉 读入,然后 〈 内存变量 〉 的值与 〈 终值 〉 比较,如果 〈 内存变量 〉 的值在 〈 初值 〉
与 〈 终值 〉 范围内,则执行 FOR与 ENDFOR之间的命令,然后 〈 内存变量 〉 按 〈 步长值 〉 增加或减小,重新比较,直到 〈 内存变量 〉 的值不在 〈 初值 〉 与 〈 终值 〉 范围内,结束循环,转去执行 ENDFOR后面的第一条命令。
第 6章 循环结构设计
6.2 列表框与组合框控件列表框和组合框为用户提供了包含一些选项和信息的可滚动列表。在列表框中,任何时候都能看到多个项,而在组合框中,平时只能看到一个项,用鼠标单击向下按钮可以看到多项的列表。
第 6章 循环结构设计
6.2.1 列表框列表框( ListBox)显示一个项目列表,用户可以从中选择一项或多项,但不能直接编辑列表框中的数据。当列表框不能同时显示所有项目时,它将自动添加滚动条,使用户可以上下或左右滚动列表框,以查阅所有选项。
第 6章 循环结构设计
1,列表框的常用属性表 6-1 常用列表框属性属性 说 明
List
设置或返回列表中选项,使用 List属性可以得到列表中的任何选项。例如,List1.List(1)表示列表框 List1中第 2项的值
Value 列表中当前选项的值
ListCount 列表框中的选项个数
ListIndex 当前选项的索引号,如果没有选项被选中,该属性为 0
Selected
在程序运行时,使用代码来选定列表中的选项,例如,
THISFORM.List1.Selected(3) =,T.表示选中列表框 List1中的第 3条选项
ColumnCou
nt 列表框的列数第 6章 循环结构设计
2,列表框的常用方法表 6-2 常用列表框方法方法程序 说 明
AddItem 给 RowSourceType属性为 0的列表添加一项
Clear 清除列表中的各项
RemoveItem 从 RowSourceType属性为 0的列表中删除一项第 6章 循环结构设计
3,显示文件目录利用列表框可以设计显示文件目录的程序,并且可以在目录列表中方便地选定文件。
第 6章 循环结构设计
6.2.2 组合框
VFP中有两种形式的组合框,即下拉组合框和下拉列表框,通过更改控件的 Style属性可选择所需要的形式 。
(1) 下拉列表框:当 Style属性为 2的组合框控件 。与 列表框一样,为用户提供了包含一些选项和信息的可滚动列表。在列表框中,任何时候都能看到多个项;而在下拉列表中,只能看到一个项,用户可单击向下按钮来显示可滚动的下拉列表框。
第 6章 循环结构设计
(2) 下拉组合框:当 Style属性默认为 0的组合框控件。它兼有列表框和文本框的功能。用户可以单击下拉组合框上的按钮查看选择项的列表,也可以直接在按钮旁边的框中直接输入一个新项。
第 6章 循环结构设计
1,组合框的常用属性表 6-5 组合框的常用属性属性 说 明
InputMask 对于下拉组合框,指定允许键入的数值类型
Style 指定组合框是下拉组合框还是下拉列表框第 6章 循环结构设计
2,下拉列表框如果想节省表单上的空间,并且希望强调当前选定的项,可以使用下拉列表框 。
3,下拉组合框下拉组合框看起来象是在标准的文本框右边加了个下拉箭头,用鼠标单击该箭头就在文本框下打开一个列表 。 用户从中选择一个选项,该选项就会进入文本框 。
下拉组合框能实现上述表单中的文本框和下拉列表框的组合功能,即允许用户既可以输入数据又可以从列表中选择数据。
第 6章 循环结构设计
6.3 页框页框是一个可包含多个页面的容器控件,其中的页面又可包含各种控件 。 常用于需要多个数据显示的情况下,使用它,可以往前或往后,翻页,,而不需编写另外的程序 。
页框架( PageFrame)刚被创建时,只有两个“页面”( Page),PageCount属性用来设置页面数。
第 6章 循环结构设计
6.3.1 带选项卡的表单使用页框和页面,可以创建带选项卡的表单或对话框,比如“选项”对话框。
第 6章 循环结构设计
6.3.2 不带选项卡的表单也可以将页框设置为不带选项卡的形式。这时,
可以利用选项组或命令按钮组来控制页面的选择。