#070 フォーカスのあるコントロールを目立たせるには? フォーム、VBA

フォーカスのあるコントロールを目立たせる方法として、ここでは、フォーカスがそのコントロールに移動したら前景色(フォントカラー)を"白"、背景色を"赤"にしてみます。そしてフォーカスが別のコントロールに移動したら前景色を"黒"、背景色を"白"に戻します。

これらの操作は、[フォーカス取得後]および[フォーカス喪失後]イベントプロシージャを使って行います。次の例では"txtData1"テキストボックスを対象にコントロールの色を変えます。
Private Sub txtData1_GotFocus()
'フォーカス取得後
  With Me.ActiveControl
    .ForeColor = vbWhite   '白
    .BackColor = vbRed   '赤
  End With

End Sub

Private Sub txtData1_LostFocus()
'フォーカス喪失後
  With Me.ActiveControl
    .ForeColor = vbBlack   '黒
    .BackColor = vbWhite   '白
  End With

End Sub

表形式フォームの場合、[ForeColor/前景色]プロパティを変更するとすべてのレコードの色が一斉に変わってしまいます。上記のコードの場合フォーカス取得後にフォントを"白"にしていますので、背景色が同じ"白"だとカレントレコード以外の"txtData1"テキストボックスの内容は見えなくなります。しかし[BackColor/背景色]プロパティについてはカレントレコードの色だけが変わります。
※このコードは"データシートビュー"では無効です。
| Index | Prev | Next |

この情報は参考になりましたか?、問題は解決しましたか?、もしまだなら......
T'sWareのワンポイトテクニカルアドバイスをご利用ください。3000円/件〜でご支援します。
スタンドアロンからSQL Server対応まで、オーダーメイドのシステムを短納期・安価でお届けします


Copyright © T'sWare All rights reserved