【问题标题】:Given the tabindex (integer) how do I select a listbox?给定 tabindex (整数)我如何选择一个列表框?
【发布时间】:2012-02-20 23:08:15
【问题描述】:
我制作了一个包含 10 个列表框的表单。我想把焦点放在我选择的列表框上。例如,如果我选择整数“3”,它将把焦点放在 tabindex = 3 的列表框上。
我该怎么做?
我认为这可能有效,但它没有:
Dim lst As VB.ListBox: Set lst = Form.Controls(lst.TabIndex = 3)
lst.SetFocus
【问题讨论】:
标签:
forms
vb6
listbox
controls
【解决方案1】:
您的列表框有控件数组吗?如果是这样,您可以这样做:
YourListBoxName.Item(YourNumber).SetFocus
只有当列表框是一个控件数组并且您的选项卡索引设置的顺序与您在屏幕上放置列表框的顺序相同时,上述代码才能正常工作。
否则,你可以试试这个代码:
Dim oControl As Control
Dim YourNumber As Integer
YourNumber = 4
For Each oControl In Me.Controls
If oControl.TabIndex = YourNumber Then
oControl.SetFocus
Exit For
End If
Next
此代码将遍历表单上的所有控件,并主动搜索与您的标签索引匹配的控件。找到控件后,它会将焦点设置为它。