旧 VB プログラマ (というのも変ですが) に多いのですが、VB7 (VB2002) 以降で GotFocus イベントや LostFocus イベントを使う方が未だにいらっしゃいます。発売してもう何年も経ってますし、そろそろやめにしませんか? (;´-ω-`)
GotFocus イベントと LostFocus イベントが低水準なイベントです。GotFocus イベントの代わりに Enter イベント、LostFocus イベントの変わりに Leave イベントを使用します。以下は、MSDN ライブラリから抜粋です。
GotFocus イベントおよび LostFocus イベントは、WM_KILLFOCUS Windows メッセージおよび WM_SETFOCUS Windows メッセージに結び付けられた、低水準のフォーカス イベントです。一般的に、GotFocus イベントおよび LostFocus イベントは、UICues を更新するときにだけ使用されます。Activated イベントおよび Deactivate イベントを使用する Form クラス以外のすべてのコントロールに対して、Enter イベントおよび Leave イベントを使用する必要があります。
実際、Form をアクティブにした時に GotFocus イベントが駆動してしまいます。実際、Form をディアクティブにすると LostFocus イベントが駆動してしまいます。(その TextBox にフォーカスがある場合のみです)
外注さんからあがってきたコードを、一括置換するのに慣れてしまいました。そんな私からのお願いでした。(*_ _)