大文字と小文字を自動的に変換するには、多くの人が最初に UCase$ と LCase$ を思い浮かべるはずですが、これら 2 つの関数を使用する場合は、Key_PRess イベントでこれらを使用しないでください。 ABC」の場合、結果は「cba」になります》、なぜですか?
なぜなら、Aを入力するとLCase$がaに変換してくれるのですが、変換完了後、Bを入力し続けるとマウスカーソルがaの手前で止まり、BaとなってLCase$が変換してしまうからです。変換が完了すると、C を入力し続けると、Cba に変換されます。 信じられないなら自分で試してみてください
Key_Press の正しいアプローチは、パラメータ KeyAscii を決定することです。 aのAsc値は97、AのAsc値は65なので、大文字を小文字に自動変換する必要があります。 書き方は以下の通りです。
PrivateSubText2_KeyPress(KeyAsciiAsInteger)
IfKeyAscii>=65AndKeyAscii<=90Then
キーアスキー=キーアスキー 32
EndIf->