• ベストアンサー

テキストボックスの入力制限

 VB6の画面入力でテキストボックスにフォーカスが移った際、半角カナや全角漢字、半角アルファベット大文字と云ったキーボードからの入力を制御したい(OSはWinXp/FEPはIME2002を使用)のですが、良い方法が有れば教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

入力を制御したいだけであれば、 テキストボックスのプロパティ「IMEMode」で出来ます 更に入力制限をかけたいのであれば、 マスク エディット (MaskEdBox) コントロールを使用する #1さんの回答はテキストボックスにて入力制限を行うですね

Adenau
質問者

お礼

今回は入力制御の要求の方がが高いので、利用させて頂きます。 IMEMode・・・見つけられなかった(恥)

その他の回答 (2)

  • ducati
  • ベストアンサー率29% (308/1062)
回答No.3

#1です。 私の方法で行くならば、KeyAsciiのコードを変えれば他にも対応できるでしょう。 半角のカナだけとか、全角とか漢字だけ等。 それぞれのコードはご自分で調べてください。

Adenau
質問者

お礼

 入力内容についてのチェックが範囲指定でいろんな幅で設定出来ますね。 有難うございます。応用させていただきます。

  • ducati
  • ベストアンサー率29% (308/1062)
回答No.1

ということは、半角の数字だけ入力可にしたいということでいいのでしょうか? 下記参考になりますか? 半角数字とバックスペースのみ効きます。 フォーカスが移る際に下記関数を呼んであげればよいはずです。 見当違いでしたら、ごめんなさい。 '##################################################### '# 半角の数字とBackSpaceしか入力できないようにする # '##################################################### Public Sub HankakuCHK(KeyAscii) If KeyAscii < 48 Or KeyAscii > 57 Then If KeyAscii <> 8 Then KeyAscii = 0 End If End If End Sub

Adenau
質問者

補足

 有難うございます。 質問の趣旨としてはフォーカスが来た際(Got_Focus)に、文字種類を制御したいって事です。 例えば”CapsOnの半角アルファベットを打たせたい”とか”2バイト文字のカナを打たせたい”とかをコントロールしたいです。  と云う訳で"半角数字とバックスペースのみ"のテキストボックスにはこれを使うという事ですね。早速試してみます。

関連するQ&A