數據表格控制元件
# Smart 控制元件使用(數據表格)
此控制元件組中包含一些數據表格的使用說明。
# 1. TcxGrid 元件
TcxGrid是一個強大的表格元件,可根據需求自行設計定義表格樣式。
# 1.1. 建立檢視
首先,建立一個空的應用程式專案。 然後轉到元件面板的數據表格選項卡,然後選擇TcxGrid:
雙擊它以將表格新增到窗體。 控制元件出現后,根據需要調整其大小。 以下螢幕截圖演示了一個帶有TcxGrid元件的窗體:
位於網格控制元件右下方的「結構導航器」用於顯示和管理網格結構。 目前,上面顯示的網格控制元件僅包含一個網格級別(cxGrid1Level1)和關聯的資料庫表檢視(cxGrid1DBTableView1)。 要在對像檢查器的屬性面板中顯示級別或表檢視的屬性,請在「結構瀏覽器」中單擊相應的標籤。
選擇cxGrid1元件並將其重新命名為Grid。 接下來,使用「結構導航器」進行重新命名,並檢視lvFilms和tvFilms:
要建立一個DataSource,首先需要在資料庫中建立對應的表格。此次我們在test資料庫中建立一個表格Films,包含幾個欄位(如FCode(影片程式碼),FName(影片名稱),FNote(描述),FRunTime(影片時長)等)。然後在TARS中建立test帳套的配置。
在Smart中切換到數據控制選項卡,將TRFConnection、TRFDataSet與TDataSource放置在窗體上。配置TRFConnection中的屬性為TARS中的帳套配置。將Active屬性勾選為True以啟用連線。
DataSource1數據源元件屬性設定
DataSet(數據集):RFDataSet1
RFDataSet1數據集元件屬性設定
UpdateOptions
->UpdateTableName
(更新表名):test
UpdateOptions
->KeyFields
(關鍵值欄位):FCode
Connection(連線元件) : RFConnection1
SQL : SELECT FCode,FName,FNote,FRunTime FROM Films
Active:True
在建立並設定數據源之後,必須將其連線到網格的「檢視」。 從「結構導航器」視窗中選擇tvFilms檢視。 對像檢查器將顯示檢視的屬性。
# 1.2. 建立表格列
有三種方法可以為數據繫結檢視建立列。 第一種是使用「結構導航器」。 右鍵單擊tvFilms標籤,然後從下拉功能表中選擇[Create All Columns]
選項:
第二種方法,列也可以使用元件編輯器建立。 這可以通過「結構導航器」的[Customize...]
按鈕啟用。 在Coloums選項卡中,按頁面底部的[Retrieve Fields](檢索欄位)
按鈕以新增與繫結數據集的所有欄位相對應的列。
第三種也是最簡單的方法,這種方法不需要在建立網格列時先去繫結數據源。每當將表格控制元件放置在窗體上,指定檢視以顯示數據並建立和設定所有必要的數據源時,您可能會使用此方法。 此時,將網格連線到數據源所需要做的就是右鍵單擊網格,然後從下拉功能表中選擇Link to <DataSource name>
選項,如下圖所示:
這將自動將網格連線到選定的數據源,並檢索將顯示所有欄位。
將列新增到檢視后,其名稱將顯示在Coloums頁面上的列表內。 選擇需要刪除的列,然後按[Delete]
按鈕或Del鍵。 這將從檢視中刪除選定的(不需要的)列。
可以使用「結構導航器」和「對像檢查器」自定義每列的屬性。 在「結構瀏覽器」中選擇一列后,其屬性將顯示在「對像檢查器」中。 下圖演示瞭如何更改列的標題:
為所有列指定適當的名稱,如以下螢幕截圖所示:
# 1.3. 設計表格顯示效果
讓我們修改tvFilms檢視的外觀。 在對像檢查器中展開其OptionsView屬性組。 首先,我們將調整所有列的寬度,以便在不需要水平滾動條的情況下顯示完整的單元格內容。 選擇ColumnAutoWidth選項並將其設定為True,如下所示:
必要時調整所有列的寬度,以顯示每個列標題的全文。 只需單擊並適當拖動列標題邊緣。您可能已經注意到某些列值顯示不完整。 爲了避免這種情況:
啟用CellAutoHeight選項。 它調整單元格的高度以完全顯示其內容。 結果如下所示:
您還可以將最佳擬合應用於單個列,只需雙擊列標題的右側邊框。
啟用「結構導航器」,然後選擇「 tvFilmsFCode」列。 呼叫對像檢查器並展開列的Options屬性組。 將Grouping屬性設定為False,這樣就可以避免該列被作為分組條件。
# 1.4. 建立頁尾摘要
元件編輯器是在控制元件中建立彙總的便捷工具。 啟用它,選擇所需的「檢視」並切換到設計器視窗的[Summary]
選項卡。 該選項卡包含三個子選項卡,用於建立不同型別的摘要。 要建立頁尾摘要,請轉到[Footer]
標籤:
單擊[Add]
按鈕建立頁尾摘要專案,該專案將顯示在上方顯示的空白專案列表中。 選擇它,然後使用對像檢查器按如下所示調整其屬性:
- 將其列屬性值更改為tvFilmsFRunTime。 這將選擇要在彙總計算中使用的列值。 此屬性還定義了顯示彙總值的預設列腳。
- 將其Kind屬性值設定為skMax,這將設定頁尾以顯示所有電影的最長播放時間。
您還可以設定摘要值的格式以提供更多資訊。 使用對像檢查器並將[Format]
屬性值設定為「 最大值0分鐘」,其中0是摘要值佔位符。 格式化的摘要值如下所示:
# 2. TFASTStatGridView 元件
該元件顯示為一個帶排名的表格。
# 2.1. 屬性
屬性 | 功能說明 |
---|---|
DataSet | 設定表格繫結的數據集控制元件 |
Columns | 設定表格顯示的列 |
# 2.1.1. Columns 屬性
該屬性表現爲一個陣列,其中包含如下屬性。
屬性 | 功能說明 |
---|---|
Caption | 顯示列的標題文字 |
FieldName | 需要顯示內容的欄位名稱 |
Width | 列的寬度 |
# 3. TFASTRoundChartStat 元件
該元件顯示為一個餅圖。
# 3.1. 屬性
屬性 | 功能說明 |
---|---|
DataSet | 設定表格繫結的數據集控制元件 |
Columns | 設定表格顯示的列 |