投稿日 | : 2003/12/17(Wed) 17:01 |
投稿者 | : ak |
Eメール | : |
URL | : |
タイトル | : Re: TextboxのGotFocusについて |
> いつもお世話になってます。
>
> フォームに2つのTextboxを配置して、Text1からText2にフォーカスが
> 移動したときに、MsgBoxを表示させようとしています。
>
> Private Sub Text1_LostFocus()
> MsgBox "Text1 LostFocus!"
> End Sub
>
> Private Sub Text2_GotFocus()
> MsgBox "Text2 GotFocus!"
> End Sub
>
> ところがなぜかText1からText2にフォーカスを移動させても
> Text2のGotFocusイベントが発生しません。
> (カーソルはText2に移動しています)
>
> さらになぜかText1のLostFocusイベントでMsgBoxの表示を
> コメントアウトするとText2のGotFocusイベントが発生します。
>
> 原因がわかる方いらっしゃいましたら教えてください。
> よろしくお願いします。
>
> 環境:WindowsXP SP1
> Visual Basic 6.0 SP5
Validateイベントを使用してみてください。
サンプルを記述しておきます。
注: テキストのCausesValidation プロパティをTrueに設定してください。
Private Sub Text1_Validate(Cancel As Boolean)
If MsgBox("移動しますか?", vbYesNo, "Text1") = vbNo Then
Cancel = True
End If
End Sub
Private Sub Text2_GotFocus()
MsgBox "フォーカスを受け取りました。", vbOKOnly, "Text2"
End Sub