6

フレーム内に相互に排他的な 6 つのラジオ ボタンと 1 つのコマンド ボタンで構成されるフォームがあります。

各ラジオ ボタンには既に異なるタブ インデックスを指定しましたが、実行時にタブ フォーカスを押すと、ラジオ ボタンからスキップされました。

TABを押して別のラジオボタンにフォーカスを与える方法は?

4

2 に答える 2

3

他の人が上で言ったように、これは意図された振る舞いです。あなたが本当にこれを達成したいのなら、私がこれを行うと考える唯一の方法は、各ラジオボタンを別々の画像ボックスに配置することです(BorderStyle = None、TabStop = False)。これは機能しますが、矢印キーを使用してラジオボタン間を移動することはできず、タブを押すだけです。

于 2012-08-02T14:08:24.557 に答える
2
Private Sub Option1_KeyPress(KeyAscii As Integer)
   If KeyAscii = 9 Then
      Option2.SetFocus
   End If
End Sub

KeyAscii=9 は Tab キーのコードです。ただし、すべてのラジオ ボタンに対してこれを行う必要があります。

インデックス 0、1、2 を持つ同じラジオ ボタンに属するラジオ ボタンを追加すると、次のように実行できます。

Private Sub Option1_KeyPress(Index As Integer, KeyAscii As Integer)
If KeyAscii = 9 Then
    If Index < Option1.Count - 1 Then
        Option1(Index + 1).SetFocus
    Else
        Option1(0).SetFocus
    End If
End If
End Sub
于 2012-08-05T04:41:39.610 に答える