一。表格(grid):表格类似于一个浏览器,是按行和列操作和显示的容器,类似于我们在第二章中使用browse命令弹出的browse窗口。在实际应用中,可用表格来浏览或编辑表文件记录内容。若浏览或编辑表中的记录,须在主程序中打开表文件。用表格显示记录时,表格的每一行显示一条记录,每列显示一个字段。运行时,在表格中通常使用鼠标的单击定位,然后可对选择的内容进行编辑或修改,修改后的内容自动存到表文件中。如果表格的宽度不足以显示全部字段,可用鼠标拖动表格下面的滚动条或单击表格下面的左右箭头进行调整。
一个表格对象包含一个表头(header)对象和一个或多个列数据操作对象。表头对象用于列的标题的显示内容和格式。数据操作对象是对列数据进行操作时所选用的控件。在设计阶段,系统自动加入一个文本框对象作为列数据操作对象,用户可加入其他控件对象。例如,某列对象与表中的逻辑型字段绑定,如在该列中以检查框的形式编辑和显示,则应在该列中加入一个检查框(check)控件。一个列中如有一个以上的数据操作对象,则应设置列对象的 currentcontrol属性确定当前使用哪一个。
二。表格的常用属性如下:
属性 | 作用 |
columncount | 列数.如columncount为-1,运行时表格将具有和记录源中字段一样多的列 |
deletemark | 是否具有删除标记 |
recordsourcetype | 表格中显示记录的类型(记录源类型).参数如下:0-表,1-别名, 2-查询(.qpr),3-提示,4-sql说明 |
recordsource | 对应recordsourcetype的名称(记录源) |
childorder | 与父表主关键字相连的子表中的外部关键字 |
linkmaster | 表格中显示子表的父表. |
三.表格常用的方法:
方法 | 作用 |
activecell(行,列) | 激活指定单元格 |
addcolumn(列号) | 在指定位置添加一列,但columncount属性值不变 |
addobject | 在列中添加对象 |
属性 | 作用 |
controlsource | 列控制源 |
currentcontrol | 列接收和显示数据使用的控件 |
sparse | currentcontrol指定的控件是否影响整个列 .T.--只有在列中的活动单元格才以currentcontrol指定的控件接收和显示数据,其他单元格用文本框显示. .F.--列中所有单元格均以currentcontrol指定的控件显示数据,活动单元格接收数据 |
说明:列还可用inputmark,format和alignment等属性控制数据的输入内容、显示格式和对齐方式。如要进行有条件的格式编排,可使用一组动态格式设置属性。例如,Dynamicfontname、Dynamicfontsize、Dynamicforecolor设置动态字体,字号和颜色。
五.表头对象常用属性:
属性 | 作用 |
caption | 列标题文本 |
alignment | 列标题文本的对齐方式 |
在表格中不仅能显示字段数据,还可以在表格的列中嵌入文本框、复选框、下拉列表框、微调按钮及其他控件。比如,假设表中有一个逻辑型字段,当运行表单时,使用复选框显示其记录值"真"或"假"(.T.或。F.), 比使用文本框更加直观,修改这些字段的值只需设置或清除复选框即可。
用户可在"表单设计器"中交互地在表格中增删列和在列中交互式添加控件和删除已加入列中的控件。
Visual FoxPro基础教程完整版
六。表格中列的选择:
1.选择表格,右击表格,在菜单中选择"编辑",此时表格进入编辑状态
2.在表格的编辑状态下,单击列的表头区即选择列的表头对象,若单击列的非表头区则选择该列。
3.可设置列的controlsource属性为表中的相应字段名。
七。表格中列的增删及移动:
在表格的编辑状态下,按Delete键即删除该列。列删除后,表格的columncount属性值会自动减一。
八。在表格中增加列:选中表格,在"属性"窗口中,改变表格的columncount属性值即可。
九。在表格的列中增加控件:
1.右击表格,选菜单中的"编辑"命令,使表格进入编辑状态。
2.在表格的编辑状态下,点击表格中某一列的非表头区,即选择了该列
3.选"表单控件工具"栏中的某一个控件,然后单击该列对象,即将该控件加入到该列中。
十。删除列中的控件:
1.在"属性"窗口的"对象"列表框选择要移动的控件。
2.按delete键即可将该控件删除。
Visual FoxPro基础教程完整版