投稿日 | : 2004/04/13(Tue) 17:26 |
投稿者 | : GOD |
Eメール | : |
URL | : |
タイトル | : Re: Tab移動 |
> Enterキーを押したときに、フォーカスを次のTabIndexのコントロールに飛ばしたいのですが、
> 全てのコントロールのKeyPressに処理を書くしか無いでしょうか?
>
> FormのKeyPreviewをTrueにして、
> FormのKeyPressでEnterキーをとって、
>
FormのKeyPressでEnterキーが取得可能なコントロールという条件なら
Private Sub Form_KeyPress(KeyAscii As Integer)
Dim CtrlObj As Object
If KeyAscii = vbKeyReturn Then
Set CtrlObj = Me.ActiveControl
CtrlObj.Enabled = False
CtrlObj.Enabled = True
End If
End Sub
↑のような感じですね。
ただ、ボタン系統のコントロールはEnterを押下してもボタン押下イベントが働いてEnter取得
できないと思いますけど・・・
サブクラス化すれば処理できるようになるのかな?(←未確認)