一。组合框(combobox):组合框和列表框的功能类似,但使用更为灵活,更为常用。实际上,组合框是由一个文本框和一个列表框组成的,组合框又被称为弹出式菜单。用户使用时,单击文本框右侧的三角即可展开下拉列表,如图27
二。组合框常用的属性:见下表
属性 | 作用 |
rowsource | 组合框内容从何处来(来源) |
rowsourcetype | 组合框内容来源的类型,详见注1 |
displayvalue | 选择值 |
boundcolumn | 在组合框包含多项时指定哪一列作为value属性的值 |
columncount | 行源列数 |
list(i) | 第i行的值 |
selected(i) | 第i行是否被选中 |
multiselect | 是否可以同时选取多项 |
moverbars | 项目是否可以移动 |
sorted | 当rowsourcetype为0和1时,组合框内容是否按字母大小排序 |
listindex | 组合框中当前被选定项的索引值 |
integralheight | 组合框的高度是否可自动调整 |
listcount | 组合框中数据项的数目 |
style | 指定组合框的类型.参数如下:0-下拉组合框,也可在文本框中直接输入 2-下拉列表框,只能在展开的下拉列表中选择 |
incrementalsearch | 确定在键盘操作时是否支持增量搜索.值为.T.,当用键盘选择列表项,用户敲一个键,系统将自动定位到与输入字母相应的项前 |
注1(rowsourcetype属性可指定的值):
0-无,运行时使用列表框的确良additem和addlistitem方法加入
1-值,将列表框的内容在设计时直接写在该属性中
2-表别名:由columncount确定表中选择的字段。当用户选择列表框时,记录指针将自动移到该记录上
3-sql语句:见sql部分,由执行的结果产生。
4-查询文件名:见查询部分,由查询结果产生
5-数组名
6-字段名表:可用表别名作为字段前缀。当用户选择列表项时,记录指针将自动移到该记录上
7-文件名描述框架,可包含"*"和"?"来描述在列表框中显示的文件名
8-结构
9-弹出式菜单,提供向后兼容。
Visual FoxPro基础教程完整版二。组合框常用的方法:见下表
方法 | 作用 |
additem | 增加列表项 |
removeitem | 移去列表项 |
clear | 移去所有列表项 |
requery | 当rowsourcetype为3和4时,根据rowsource中的最新数据重新刷新列表项 |
三。组合框常用事件:列表框的常用事件为click(单击)事件、dbclick(双击)事件和interactivechange事件(当用户使用键盘或鼠标更改组合框的值时发生的事件,比如,我们单击组合框右侧的三角展开下拉列表时,即会发生此事件)
四。组合框示例:修改表单xggz.scx,使用组合框控件展示其中的"文化程度"和"职称"两个字段的内容
1.打开表单xggz.scx,该表单的制作方法见第二章第二节内容
2.该表单中,"文化程度"和"职称"两个字段的内容原先使用的是文本框控件。我们选中这两上文本框,将其删除。再添加两个组合框,其中Combo1用于展示"文化程度"字段的值,Combo2用于展示"职称"字段的值,如图28
3.选中combo1,在"属性"窗口中将其rowsoucetype属性值改为"6-字段",将rowsource属性值改为"职工档案。文化程度", 并将combo1的ctrolsource属值设为"职工档案。文化程度".同样方法,设combo2的rowsourcetype属性值设为"6-字段",将rowsource属性值设为"职工档案。职称",并将其controlsource属性值设为"职工档案。职称".
4.运行修改后的xggz.scx表单,如图30,
我们可以看到,单击"上一条","下一条"等命令按钮时,每条记录的"文化程度"和"职称"均不同。单击combo1和combo2,在列表中选择一个值,程序即用该值来更改表中相应字段的值。
Visual FoxPro基础教程完整版