DOBON.NET DOBON.NETプログラミング掲示板過去ログ

「テキストボックスに数字しか入力できないようにする」について

分類:[全般]

どぼん!のVB道に「テキストボックスに数字しか入力できないようにする」という内容のものがあったのですが、この機能に加えて【バックスペース】が効くようにする「どぼん!のVB道」をおしえてください。
■No37に返信(人生 いっぱいいっぱいさんの記事)
> どぼん!のVB道に「テキストボックスに数字しか入力できないようにする」という内容のものがあったのですが、この機能に加えて【バックスペース】が効くようにする「どぼん!のVB道」をおしえてください。

『【バックスペース】が効くようにする「どぼん!のVB道」をおしえてください』という言葉の意味は分かりませんが、とりあえず、

テキストボックスに数字しか入力できないようにする
http://dobon.net/vb/dotnet/control/numerictextbox.html

でのコードを例えば次のようにしてはいかがでしょうか。

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
すいません、便乗で質問させてください。

数字の他にハイフンも使いたいのですが、(上のようにバックスペース使える状態で)
この場合どのようなコードを書けばいいのでしょうか、
ご教授お願いいたしますm(_ _)m
■No42に返信(tanoさんの記事)
> すいません、便乗で質問させてください。
>
> 数字の他にハイフンも使いたいのですが、(上のようにバックスペース使える状態で)
> この場合どのようなコードを書けばいいのでしょうか、
> ご教授お願いいたしますm(_ _)m

次のようにIf文の条件式に
And e.KeyChar <> "-"c
と追加してください。

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 _
And e.KeyChar <> "-"c Then
e.Handled = True
End If
End Sub
無事できました〜。
どうもありがとうございますm(_ _)m
解決済み!
人生いっぱいいっぱい
ありがとうございます。大変参考になりました

m(_ _)m
■No78に返信(人生いっぱいいっぱいさんの記事)
> 人生いっぱいいっぱい
> ありがとうございます。大変参考になりました
>
> m(_ _)m
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板