一。表格(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基礎教程完整版