2009年10月28日水曜日

VB.NET テキストボックスでの入力制限

去年の春から授業でVB.NETを学び始め、それが今年も続いています。
当然年度ごとに大きな課題があり、
頭を悩ましながらかつ、みんなと協力しながら作り上げていきます。

そんな年度末の課題で使用した、テキストボックスの入力制限を、
今年の課題でも使う時が来たので、見て思い出せるようにメモ。

VB.NETとタイトルでは一言で書いてありますが、
生憎授業及び自宅での開発環境はVS2005ですので、
もしかしたらそれ以前、以降の環境ではダメかも知れないので注意。
' ******************************************************
' キー入力制限 / 数字+BackSpaceのみ
' ******************************************************
Private Sub TextBox1_KeyPress(ByVal sender As Object, _
  ByVal e As System.Windows.Forms.KeyPressEventArgs) _
  Handles TextBox1_KeyPress

  If (e.KeyChar < "0"c Or e.KeyChar > "9"c) _
   And e.KeyChar <> vbBack Then

    e.Handled = True

  End If

End Sub
入力制限は、TextBox1のKeyPressイベント発生時に行います。 このサンプルはコメントにも書いてある通り、「数字+BackSpace」のみです。 判断文字をしている際の「"0"c」などは、Char型へキャストしています。 この事に関しては、Microsoftのリファレンスに書かれていますね。 文字型 (Char) もし数字以外を入れたり(日付のための「/」など)する場合には、 判断にその文字を入れる必要があります。

0 件のコメント:

コメントを投稿