imTextで入力文字を半角英数または半角カタカナのみにしたいです。
デフォルトのIMEModeを半角カタカナに指定した場合、
半角/全角キーで半角英数にIMEModeを変更することが可能。
ですが、今回デフォルトのIMEModeは半角英数にしたいです。
デフォルトのIMEModeを半角英数に指定した場合、
半角/全角キーで半角英数にIMEModeを変更することが不可能。
デフォルトのIMEModeを既定値に指定した場合、
半角/全角キーで半角英数や半角カタカナにIMEModeを変更することが可能
ですが、全角文字にもモードが変更してしまいます。
プログラムで入力が全角文字だった場合、入力をクリアするという
制限はしていますが、できれば、IMEModeの変更は
半角英数か半角カタカナのみにしたいです。
何かいい方法はありませんか。
全角・半角かを判断するところに追加すればできました。
Private Function Bytechk(Value As String) As Boolean
Dim LetterCount As Long '文字列の文字数
Dim ByteCount As Long '文字列のバイト数
LetterCount = Len(Value) '入力文字数
ByteCount = LenB(StrConv(Value, vbFromUnicode)) '入力文字のバイト数
If LetterCount <> ByteCount Then '全角ならば
txtSendName.IMEMode = imIMEKatakanaSBCS '半角カタカナ入力に指定
txtSendName.Text = ""
End If
End Function