列表框控件、ColumnCount 和 ColumnWidths 属性示例
下例用 ColumnWidths 属性来改变多列列表框的列宽;用三个文本框控件来指定单个列的宽度,并用 Exit 事件来指定每一个文本框的度量单位。
窗体包含:
- 名为 ListBox1 的列表框。
- 名为 TextBox1 到 TextBox3 的三个文本框控件。
- 名为 CommandButton1 的命令按钮。
试着输入 0 值来隐藏列。
Dim MyArray(2,3)
Sub UserForm_CommandButton1_Click()
'被分号分开的每一列
'都需要 ColumnWidths 值
UserForm_ListBox1.ColumnWidths =UserForm_TextBox1.Text & ";" & UserForm_TextBox2.Text & ";" & UserForm_TextBox3.Text
End Sub
Sub UserForm_TextBox3_Exit(Cancel)
UserForm_TextBox3.Text = UserForm_TextBox3.Text
End Sub
Sub UserForm_TextBox2_Exit(Cancel)
UserForm_TextBox2.Text = UserForm_TextBox2.Text
End Sub
Sub UserForm_TextBox1_Exit( Cancel)
UserForm_TextBox1.Text = UserForm_TextBox1.Text
End Sub
Sub UserForm_Initialize()
Dim i, j, Rows
UserForm_ListBox1.ColumnCount = 3
Rows = 2
For j = 0 To UserForm_ListBox1.ColumnCount - 1
For i = 0 To Rows - 1
MyArray(i, j) = "Row " & i & ", Column " & j
Next
Next
UserForm_ListBox1.List() = MyArray '把 MyArray 加载到 ListBox1
UserForm_TextBox1.Text = "1" '初始为 1 英寸列
UserForm_TextBox2.Text = "1"
UserForm_TextBox3.Text = "1"
End Sub
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41