No.2
- 回答日時:
当方、VS2005で確認しました。
同じだとは思いますがご了承ください。まず、IMEModeはDisableがいいと思います。Offだと起動できるので。
で、あまりうまい方法では ないかもしれませんが、以下のような感じで
一応いけるはずです。
以下では、入力(貼り付け)されて指定以外の文字があったら、入力(貼り付け)直前の状態に戻します。
-----
Public Class Form1
Private prevText As String = "" '変更前テキスト保存用
Private Sub TextBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
If TextBox1.TextLength > 0 Then '何か入力されていたら処理
For i As Integer = 0 To TextBox1.TextLength - 1
Select Case Asc(TextBox1.Text.Substring(i, 1)) '1文字ずつ文字コードチェック
Case 48 To 57, 65 To 90, 97 To 122 '半角数値、アルファベット大文字・小文字なら何もしない
Case Else '上記以外なら、直前に憶えていたテキストに戻してチェック終了
TextBox1.Text = prevText
Exit For
End Select
Next
End If
TextBox1.Select(TextBox1.TextLength, 0) 'キャレットをテキスト後端に
prevText = TextBox1.Text '現状のテキストを憶える
End Sub
End Class
-----
文字列が長いと、ちょっと厳しいかもしれませんが…
No.1ベストアンサー
- 回答日時:
ImeModeはOffの方がいいように思います
キー入力に関しては
TextBoxのKeyDownイベントで
if e.KeyCode = Keys.ProcessKey then
e.Handled = true
TextBox1.ImeMode = ImeMode.Off
else if e.Keycode = Key.Insert then
' キーボードによる貼り付け操作
if e.shift then
e.Handled = true
end if
End if
といった具合で処理出来そうです
マウスの右クリックのコンテキストメニューの対策は
ContextMenuをFormに貼り付けてメニュー項目は何も設定しません
Form_Loadイベントなどで
TextBox1.ContextMenu = ContextMenu1
といった具合に設定します …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessのテキストボックスの入力文字制限 1 2023/01/18 20:43
- Access(アクセス) capeofdragonと申します。 Access2016を使っております。 あるフォームがあり、テ 2 2022/09/09 13:18
- Mac OS Macにおける全角・半角の切り替え(自動のそれの停止) 2 2022/09/13 16:42
- デスクトップパソコン 40年間の悩み キーボードにおいて初期値として漢字ローマ字変換に設定する方法 8 2023/05/08 14:50
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- Excel(エクセル) EXCELでの文字・数字入力の基本について教えてください。 2 2023/05/29 23:17
- Excel(エクセル) exel 漢字・英数字混在セルの入力規則 5 2022/04/03 11:08
- その他(ソフトウェア) ソースネクストアプリをインストールし、製品登録で半角英数字が入力できない 5 2022/07/03 22:44
- Excel(エクセル) capeofdragonと申します Excel2016を使っておりまして 半角又は全角の任意文字列が 2 2022/10/31 13:51
- Visual Basic(VBA) エクセルの数式で教えてください。 1 2023/07/31 15:49
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
TextBoxに半角数字のみの入力しかできないようにしたい
Visual Basic(VBA)
-
VB.NETで DataRow()を利用して、値からコードを取得したい。
Visual Basic(VBA)
-
VB.net、テキストボックス入力制限、全角のみ
Visual Basic(VBA)
-
-
4
正整数の半角数字かどうか判定する
Visual Basic(VBA)
-
5
文字列の後ろから必要分だけ削除したい。
Visual Basic(VBA)
-
6
textboxユーザーコントロールのコピー&ペースト制御
Visual Basic(VBA)
-
7
VB.NET getとsetの概念がわかりません。
Visual Basic(VBA)
-
8
VBAのTextBoxに半角数字のみ入力したい
Visual Basic(VBA)
-
9
データグリッドビューの一番最初の行に列を追加したい
Visual Basic(VBA)
-
10
チェックボックスを操作できないようにしたいです VB.NET
Visual Basic(VBA)
-
11
VB.NETで他のプロジェクトで作成したフォームを使う方法
Visual Basic(VBA)
-
12
String"から型'Double'への変換は無効です。 とエラーが出ます。
Visual Basic(VBA)
-
13
VB初心者。小数点以下の表示でつまづいています(涙
Visual Basic(VBA)
-
14
DataGridViewでセルクリックイベントを発生させるには
Visual Basic(VBA)
-
15
Designer.vbは直接コードをいじってはだめ?
Visual Basic(VBA)
-
16
VBのReturnの使い方
Visual Basic(VBA)
-
17
VB.NETの配列にExcelから読み込んできたデータを格納したい
Visual Basic(VBA)
-
18
VB.NETで、EXCELの右寄せ
Visual Basic(VBA)
-
19
VB.NET2005 TextBox 高さ(Height) 変更
Visual Basic(VBA)
-
20
VB.NETで1→A、2→B、26→Z、27→AAの変換をしたい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba SelStart、SelLen教えてく...
-
正整数の半角数字かどうか判定する
-
「終了していない文字列型の定...
-
VC#でテキストボックスに変数の...
-
正規表現について
-
Access VBAで、数字だけをチェ...
-
c言語で「文字列(最大80文字)お...
-
クオーテーションの入力方法
-
文字認証の問題
-
ハイフンだけ置換したい。
-
初心者です。gulpでコンパイル...
-
javascript:void(0)とは何でし...
-
表示ページによって、aタグ内の...
-
ASPでエクセルの起動
-
C#でボタン名を変更しても動く
-
JavascriptでのExcel起動について
-
現在日付を初期値にするには
-
階層化されたメニューの作り方
-
クロスドメインでクッキーの取得
-
ネットスケープでJavaScriptの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vba SelStart、SelLen教えてく...
-
VB.NET2003 テキストボックスに...
-
gas 全角数字を半角数字に変換
-
「終了していない文字列型の定...
-
正整数の半角数字かどうか判定する
-
VBAによる第3、4水準文字の判定...
-
ハイフンだけ置換したい。
-
VC#でテキストボックスに変数の...
-
C#でTextBoxに数値のみ入力可能...
-
エクセル 半角英数6文字以上 ...
-
漢字などを正規表現でパターン...
-
JavaScriptに関する質問です。 ...
-
正規表現について
-
javascript 文字列の最後から1...
-
エクセルVBA/ Formatで文字列が...
-
禁止文字チェック
-
Javascript 全角カナ+半角スペ...
-
CListCtrl の特定のセル(アイ...
-
文字認証の問題
-
Access VBAで、数字だけをチェ...
おすすめ情報