- 締切済み
textboxに数字だけを入力させるには?
textboxに数字だけを入力させるにはどうすれば良いでしょうか。もしそれが不可でしたら、数字以外は無効にするにはどういう処理をすれば良いですか。初心者ですので、わかりやすく教えて下さい。よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- mk227
- ベストアンサー率100% (3/3)
数字だけを入力させたいならTextBoxではなくNumericUpDownを使うことを検討されてみてはいかがですか? どうしてもTextBoxでないといけないならTextChangedイベントハンドラ内で Dim cr() As Char = TextBox1.Text.ToCharArray For Each c As Char In cr If Char.IsDigit(c) = False Then MessageBox.Show("数字のみ入力してください。", "入力チェック", MessageBoxButtons.OK, MessageBoxIcon.Exclamation) Return End If Next のように文字のチェック処理を実装します。
- gesotoku
- ベストアンサー率28% (77/271)
今までの経緯を見た所、貴方は質問の仕方にも姿勢にも少々問題があるように思われます。 ・何の話か明確になっていない 「JAVAでわかんないんですけど!!!」とだけある質問で、 よくよく聞いて見たらJavaScriptの話だった、てな事は非常に非効率です。 VBのつもりなのかVB.NETのつもりなのか分からないから答えない、という人もいるでしょうし、私のようにVBのつもりで答えて的が外れているなんて事もあるでしょう。 質問者にとっても回答者にとっても無駄が多いのです。 ・与えられた情報に対して吟味、検討しようという意欲が感じられない。 皆さん共通して仰っている事は、 「キータイプ時イベントでキーコードを取得して、数値を表すコード以外はエラーを返す処理を設ければよい」 わけであって、解決策は出ています。後は自分で少し検討をすれば理解できる事です。 何から何までやってくれ、というのはタダで仕事の発注をしている事に他なりません。 しかし貴方はそれに対して、 「これを追加するだけで良いのでしょうか」 「文章だけでは分からない」 「何処に書いたらいいのか分からない」 と何かを考えようとしている様子がありません。 ・基本的な概念がそもそも分かっていない。 足し算も知らない幼児に掛け算を教えるのは至難の業です。 貴方もそもそもの基本を理解していないから、ヒントを与えられてもどうしていいのか分からずうろたえてしまうのだと思います。 まず自分がどこの部分から理解できないのかを突き止め、 基本から学習しましょう。 あと労力を払った人に対してお礼はきちんと言いましょう。
- grace2973
- ベストアンサー率66% (16/24)
プログラムで行う方法として テキストボックスのキー入力イベント時に 数字以外が入力されたら無効にする方法があります。 例えばテキストボックスの名前が「Text1」だったとして KeyPressイベントメソッドを作成してください。 Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii < vbKey0 Or KeyAscii > vbKey9 Then KeyAscii = 0 End If End Sub これでどうでしょうか?
- popesyu
- ベストアンサー率36% (1782/4883)
入力の制限 keypressイベントを見張って入力される文字を一文字一文字チェックする。 入力後に判定 確定ボタンとか適用ボタンとかを押す際に、入力内容をチェックして数字以外の文字が入っているようだったらエラーを出す。
補足
文章だけではちょっと・・・
- gesotoku
- ベストアンサー率28% (77/271)
VB.NETではなくVB6.0の方法で宜しいのでしょうか?
補足
VB.NET2003です。
補足
これを追加するだけで良いのでしょうか。あと、どこに書けば良いのでしょう・・・