
タイトルどおりです。
フォームに貼り付けた、TextBoxに、半角数字のみしか入力できないようにしたいです。
000000~999999までのコード(数字)を入力させるようにするわけですが、そのままだと半角英数も全角も入力できてしまいます。
GrapeCity社製のカスタムコントロール「InputMan」の“Number”を用いると簡単なのですが、これだとカーソルがボックス内の右端にきて、一の位から入力が始まってしまいます。
数字は、ボックス内の左側から入力されていくようにしたいのですが、“Number”だとなんか出来なさそう・・・?
(“Number”で左側から入力できるならそれがいいのですが)
そこで、TextBoxを使うことにしたのですが、TextBoxだと、半角数字のみしか入力できないような制限がかけるのかが、わかりません。
もし、お分かりの方がいらっしゃいましたら、ご教授下さいませ。
No.1ベストアンサー
- 回答日時:
コピペですみません。
VB6だと、
Private Sub TextBox_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case vbKeyBack, Asc("0") To Asc("9"), Asc("-"), Asc(".")
Case &H1 ' Ctrl + A
TextBox.SelStart = 0
TextBox.SelLength = Len(TextBox.Text)
Case &H3 ' Ctrl + C
Case &H16 ' Ctrl + V
Case &H18 ' Ctrl + X
Case &H1A ' Ctrl + Z
Case Else
KeyAscii = 0
End Select
End Sub
で、いかがでしょうか。
この回答への補足
お礼後の書込みです。
以下のコードで実現できました。
半ば自己解決となりましたが、
どうも、ありがとうございました。
----------------------------------
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
No.2
- 回答日時:
こんにちは、じゃんぬねっと です。
まずは、検索するクセをつけましょう。
http://dobon.net/vb/dotnet/control/numerictextbo …
コンテキストメニューからのペースト、Ctrl + C などのショートカットによるペーストも防ぐ必要があれば防ぎましょう。
面倒なので、私はカスタムコントロールを作りましたが。
検索しまくっていたのですが、見つけ出すことができずに、こちらへ質問しました。
その後、そのサイトで発見しましたので解決に至りました。
わざわざ、ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
VB.NET2003 テキストボックスに半角英数字以外入力させない
Visual Basic(VBA)
-
VBAのTextBoxに半角数字のみ入力したい
Visual Basic(VBA)
-
数字以外の入力をエラーにするには?
Visual Basic(VBA)
-
-
4
VB.net、テキストボックス入力制限、全角のみ
Visual Basic(VBA)
-
5
データグリッドビューの一番最初の行に列を追加したい
Visual Basic(VBA)
-
6
Integer変数をカラにしたいのですが
Visual Basic(VBA)
-
7
ORA-01013のエラーについて経験のある方お願いします。
Oracle
-
8
VB2005のTextBoxでカンマ区切りの表示
Visual Basic(VBA)
-
9
VB.NETで小数点以下の桁数を取得したい
その他(ソフトウェア)
-
10
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
11
ASP.NETでのメッセージ画面を出すには
Microsoft ASP
-
12
2つのDataTableをJoin
Visual Basic(VBA)
-
13
TextBoxに特定の文字のみ入力を許す
Visual Basic(VBA)
-
14
Visual Basic.NETの、Form 間での引数の引渡し方法を教えてください。
Visual Basic(VBA)
-
15
AccessのSQL文で1件のみヒットしたら終了させる構文。
その他(データベース)
-
16
【VB】コンボボックスにデータベースから取り出した値を入れたい
Visual Basic(VBA)
-
17
プロシージャまたは関数の引数が多すぎますのエラー
Visual Basic(VBA)
-
18
単一グループのグループ関数ではありません。
Oracle
-
19
エクセルVBA テキストボックスに3桁ごとにコンマ
Visual Basic(VBA)
-
20
この行は既に別のテーブルに属しています
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
PHPとPostgreSQL
-
5
テキストボックスの入力制限
-
6
アクセスのフォーム入力時に文...
-
7
教えて!全角文字「μ」の半角文...
-
8
入力フォーム(電話番号)
-
9
VISAカードの会員番号とは??
-
10
scanf( )で日本語を入力する方...
-
11
VB2005 TextBoxに何も入力しな...
-
12
TextBoxに半角数字のみの入力し...
-
13
クレジットカードの名義人の入...
-
14
ゆうちょデビット
-
15
海外通販@詐欺!?sage pay
-
16
e-Gov 電子申請について 回答お...
-
17
見覚えない請求について
-
18
海外発行のクレジットカードで...
-
19
読み方教えてください
-
20
「クレジットカード宛に返金」っ...
おすすめ情報
公式facebook
公式twitter