當前位置:編程學習大全網 - 編程語言 - vb 表格控件 詳解

vb 表格控件 詳解

表格控件使用?MSFlexGrid 控件

控件的添加

(1)? 如圖。在vb左邊的工具欄上點右鍵選部件,在部件窗口中選擇flexgrid控件,確定後就可以看到控件圖標被添加到了工具欄。

(2) 新建壹個Form窗口,點擊MSFlexGrid 控件圖標,將控件畫到Form窗口。如圖。在控件上點右鍵選屬性進入屬性頁面,調整控件屬性值。

MSFlexGrid 控件使用

文本和圖片可以同時或者單獨放在 MSFlexGrid 的任何壹個單元格中。Row 和 Col 屬性指定了當前的 MSFlexGrid 單元格。程序員可以在代碼中改變當前單元格,用戶可以在運行時使用鼠標或者箭頭鍵改變它。Text 屬性提供了當前單元格內容的參考信息。

如果單元格中的文本過長,無法全部顯示在單元格的壹行中,而且 WordWrap 屬性被設置為 True,那麽文本將回繞到同壹單元格的下壹行。如果需要顯示被回繞的文本,需要增加單元的列寬(ColWidth 屬性)或行高(RowHeight 屬性)。

使用 Col 和 Row 屬性可以分別確定 MSFlexGrid 中列與行的個數。

註意在應用程序中使用MSFlexGrid之前,首先必須將 MSFlxGrd.ocx 文件添加到工程中。如果希望自動地將文件包含在過程之中,請將它放在 Autoload 文件中。在發布應用程序的時候,應該在用戶的 Microsoft Windows System 目錄下安裝MSFlxGrd.ocx 。

====== MSFlexGrid《重要屬性》《重要屬性》《重要屬性》 ========

(1)? FormatString 屬性:設置列寬,對齊方式,固定行文本和固定列文本。

在設計時,MSHFlexGrid 語法分析和解釋 FormatString 來獲得如下信息:行和列的數目、行和列標頭的文本、列寬和列對齊方式。

FormatString 屬性包含由管道字符 (|) 分隔的段。管道字符之間的文本定義壹列並且也可能包含特定的對齊字符。這些字符使整個列左對齊(<)、居中(^)或右對齊(>)。另外,根據缺省規定文本被指定給行 0,且文本寬度定義每壹列的寬度。

FormatString 屬性可能包含壹個分號 (;)。這使得字符串的余下部分被解釋為行標頭和行寬度信息。另外,根據缺省規定文本被指定給列 0,且最長的字符串定義列 0 的寬度。

MSHFlexGrid 創建附加的行和列來駐留由 FormatString 定義的所有字段。如果只有幾個字段被指定,附加的行和列不被刪除。要刪除附加的行和列,設置 Rows 和 Cols 屬性。

下面的示例舉例說明 FormatString 屬性如何工作。

' 設置列標頭。

s$ = "<Region |<Product |<Employee |>Sales "

MSHFlexGrid1.FormatString = s$

' 設置行標頭(註意開始的分號)。

s$ = ";Name|Address|Telephone|Social Security#"

MSHFlexGrid1.FormatString = s$

' 設置列和行標頭。

s$ = "|Name|Address|Telephone|Social Security#"

s$ = s$ + ";|Robert|Jimmy|Bonzo|John Paul"

MSHFlexGrid.FormatString = s$

(2)TextMatrix 屬性

返回或設置壹個任意單元的文本內容。

語法:object.TextMatrix(rowindex, colindex) [=string]

示例:MSHFlexGrid1.TextMatrix(1, ?2) =Rnd()

(3)MouseCol、MouseRow 屬性

按行和列坐標返回鼠標的當前位置。

語法:object.MouseCol [=value] object.MouseRow [=value]

========?MSFlexGrid ?《方法》《方法》 =========

(1)AddItem 方法:將壹個行添加到 MSHFlexGrid 控件中。不支持命名參數。

語法:object.AddItem (string, index, number)

AddItem方法的語法包含以下部分:

部分描述
object對象表達式,其值是“應用於”列表中的對象。
item字符串必需的。字符串表達式,它在新增行中顯示。可以用制表符(vbTab) 來分隔每個字符串,從而將多個字符串(行中的多個列)添加進去。
Index可選的。Long類型,它代表了控件中放置新增行的位置。對於第壹行來說,index= 0。如果省略index,那麽新增行將成為帶區中的最後壹行。註意index是MSHFlexGrid中的BandColIndex。
number可選的。Long值,指出添加行的帶區號。

(2)RemoveItem 方法

運行時從 MSHFlexGrid 中刪除壹行。這壹屬性不支持命名的參數

語法:object.RemoveItem(index, number)

RemoveItem 方法的語法包含如下部分:

部分 ? 描述

object ? 壹個對象表達式。

index 壹個整數,表示 MSHFlexGrid 中要刪除的行。對於第壹行,index=0。

number 壹個 Long值,指定要從中刪除行的帶區。

說明

這壹方法刪除指定的整個行。要不刪除行來清除數據,使用 Clear 方法。

在包含子記錄的帶區內刪除壹個行時,子記錄被自動地刪除。

示例

在該示例中,用 AddItem 方法將 100 項添加到 MSHFlexGrid 中。要試用此例,可以將代碼粘貼到窗體(該窗體帶有命名為 MSFlexGrid1 的 MSHFlexGrid 控件)的聲明部分,然後按下 F5 鍵,並單擊該窗體。

Private Sub Form_Click ()

Dim Entry, i, Msg ? '聲明變量。

Msg =? "Choose OK to add 100 items to your MSFlexGrid."

MsgBox Msg ? '顯示消息。

MSHFlexGrid1.Cols = 2 '每行有兩個字符串。

For i = 1 To 100 ? '從 1 計數到 100。

?Entry = "Entry " & Chr(9) & I ? '創建項。

?MSHFlexGrid1.AddItem Entry ?'添加項。

Next?

Msg ="Choose OK to remove every other entry."

MsgBox Msg '顯示消息。

For i =1 To 50 ? '決定怎樣刪除

?MSHFlexGrid1.RemoveItem i ? '其它每壹項。

Next?

Msg ="Choose OK to clear all items."

MsgBox Msg '顯示消息。

MSFlexGrid1.Clear ? '清除列表框。

End Sub

編輯花了很大力氣,望采納!

  • 上一篇:哪些原因可能造成電腦顯卡芯片壞了?
  • 下一篇:大學老師課堂的作文2000
  • copyright 2024編程學習大全網