?? 如何在程序中動態加入控件數組.txt
字號:
無 法 采 用 你 說 的 辦 法 定 義 動 態 控 件 數 組 。 一 種 辦 法 可 以 參 考 “如何在VB程序運行時加入和刪除控件”, 另 一 種 辦 法 是 可 以 借 助 VBControlExtender來 實 現 這 種 效 果 。 下 面 是 一 個 例 子 :
Option Explicit
' 如 果 你 要 添 加 一 個 在 你 的 工 程 文 件 中
' 沒 有 用 到 的 ActiveX控 件 , 你 需 要 聲 明 它 為
' VBControlExtender.
Dim WithEvents ctlDynamic As VBControlExtender
Dim WithEvents ctlText As VB.TextBox
Dim WithEvents ctlCommand As VB.CommandButton
Private Sub ctlCommand_Click()
ctlText.Text = "你 點 擊 了 命 令 按 鈕 "
End Sub
Private Sub ctlDynamic_ObjectEvent(Info As EventInfo)
' 測 試 TreeView控 件 的 Click事 件
If Info.Name = "Click" Then
ctlText.Text = "你 點 擊 了 " _
& ctlDynamic.object.selecteditem.Text
End If
End Sub
Private Sub Form_Load()
Dim i As Integer
' 添 加 TreeView的 許 可 信 息 license集 合
' 如 果 license集 合 已 經 包 括 了 許 可 信 息 ,
' 你 將 得 到 運 行 錯 誤 732
Licenses.Add "MSComctlLib.TreeCtrl"
' 動 態 增 加 TreeView控 件 到 窗 體 。
' 如 果 你 希 望 增 加 控 件 到 其 它 的 容 器 ,
' 如 Frame或 PictureBox, 你 可 以 使 用
' Controls.Add的 第 3個 參 數 指 定 容 器 程 序 。
Set ctlDynamic = Controls.Add("MSComctlLib.TreeCtrl", _
"myctl", Form1)
' 設 置 控 制 的 位 置 和 大 小
ctlDynamic.Move 1, 1, 2500, 3500
' 添 加 一 些 節 點 到 TreeView控 件
For i = 1 To 10
ctlDynamic.object.nodes.Add Key:="Test" & Str(i), Text:="Test" _
& Str(i)
ctlDynamic.object.nodes.Add Relative:="Test" & Str(i), _
Relationship:=4, Text:="TestChild" & Str(i)
Next i
' 顯 示 控 件
ctlDynamic.Visible = True
' 添 加 textbox
Set ctlText = Controls.Add("VB.TextBox", "ctlText1", Form1)
' 設 置 textbox的 位 置 和 大 小
ctlText.Move (ctlDynamic.Left + ctlDynamic.Width + 50), _
1, 2500, 100
' 改 變 背 景 色
ctlText.BackColor = vbYellow
' 顯 示 控 件
ctlText.Visible = True
' 添 加 按 鈕
Set ctlCommand = Controls.Add("VB.CommandButton", _
"ctlCommand1", Form1)
' 設 置 CommandButton的 位 置 和 大 小
ctlCommand.Move (ctlDynamic.Left + ctlDynamic.Width + 50), _
ctlText.Height + 50, 1500, 500
' 設 置 標 題
ctlCommand.Caption = "Click Me"
' 顯 示 控 件
ctlCommand.Visible = True
End Sub
<END>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -