
タイトルどおりです。
フォームに貼り付けた、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も見ています
-
VB.NET2003 テキストボックスに半角英数字以外入力させない
Visual Basic(VBA)
-
VBのReturnの使い方
Visual Basic(VBA)
-
複数のtextboxの処理を一括で行えませんか?
Visual Basic(VBA)
-
-
4
VB.NETでコンボボックスの1行目を空白にしたい
Visual Basic(VBA)
-
5
VB.NET テキストボックスの入力チェック
Visual Basic(VBA)
-
6
KEYPREVIEW=TRUEについて。意味が分かりません・・。
Visual Basic(VBA)
-
7
VB2005のTextBoxでカンマ区切りの表示
Visual Basic(VBA)
-
8
VB.NETで他のプロジェクトで作成したフォームを使う方法
Visual Basic(VBA)
-
9
異なるスキーマからデータを抽出するには?oracl、PL/SQL
Oracle
-
10
VBでの入力値制限について
Visual Basic(VBA)
-
11
【VB】コンボボックスにデータベースから取り出した値を入れたい
Visual Basic(VBA)
-
12
textboxユーザーコントロールのコピー&ペースト制御
Visual Basic(VBA)
-
13
Spreadの選択行の取得について
Visual Basic(VBA)
-
14
DataViewで複数条件のフィルタのやり方
Visual Basic(VBA)
-
15
別フォームから戻ったときのイベント
Visual Basic(VBA)
-
16
オブジェクト参照がオブジェクト インスタンスに設定されていません というエラーについて
Microsoft ASP
-
17
VB.NET2005 TextBox 高さ(Height) 変更
Visual Basic(VBA)
-
18
VB.NET getとsetの概念がわかりません。
Visual Basic(VBA)
-
19
Designer.vbは直接コードをいじってはだめ?
Visual Basic(VBA)
-
20
VB.net、テキストボックス入力制限、全角のみ
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAのTextBoxに半角数字のみ入...
-
ハイフンとマイナス
-
TextBoxに半角数字のみの入力し...
-
入力フォーム(電話番号)
-
フォーム入力の際、電話番号等...
-
バッチの引数をユーザ入力で渡...
-
テキストボックスの入力制限
-
至急です。Yahoo!IDを作りたく...
-
e-Gov 電子申請について 回答お...
-
アマゾン商品支払い
-
ネット内で「事後通販」という...
-
カードの請求でApple.combillみ...
-
海外 スマホ
-
クレジットカードの名義人の入...
-
Amazonについてです。 アカウン...
-
読み方教えてください
-
通販でビニールのテーブルクロ...
-
DNAの表現での数字のダッシュは?
-
エポスカードで返金処理が反映...
-
通販での購入商品が届かない。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAのTextBoxに半角数字のみ入...
-
ハイフンとマイナス
-
入力フォーム(電話番号)
-
「FROM 句の構文エラーです」が...
-
VB2005 TextBoxに何も入力しな...
-
テキストボックスの入力制限
-
TextBoxに半角数字のみの入力し...
-
scanf( )で日本語を入力する方...
-
WinAPIで日本語入力モード(倍...
-
教えて!全角文字「μ」の半角文...
-
VAB プログラムが動きません。
-
1ページだけ入力してもらって...
-
VB.net テキストボックスの入力...
-
VISAカードの会員番号とは??
-
imode用の郵便番号検索CGI
-
VisualStudioのインテリセンス
-
全角英数について。
-
フォーム入力の際、電話番号等...
-
VS2010Exprsライセンスキー取得...
-
VBS 条件中の条件
おすすめ情報