2012-02-20 5 views
0

10個のリストボックスでフォームを作成しました。自分が選んだリストボックスに焦点を当てたい。たとえば、整数「3」を選択すると、tabindex = 3のリストボックスにフォーカスが移ります。tabindex(整数)を指定すると、リストボックスをどのように選択できますか?

どうすればよいですか?

私は、これはうまくいくかもしれないと思ったが、それはしていません:

Dim lst As VB.ListBox: Set lst = Form.Controls(lst.TabIndex = 3) 
lst.SetFocus 

答えて

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 

うと積極的にあなたのタブインデックスと一致するものを検索します。コントロールが見つかると、コントロールにフォーカスが設定されます。

+0

こんにちはGマストロス。ありがとうございました! – phan

関連する問題