テキストボックスに入力できる文字数を制限する方法

◆概要


このページは、Visual Basic 6.0でテキストボックスに入力できる文字数を制限する方法について記載しています。


テキストボックスのMaxLengthプロパティを利用すると、テキストボックスに入力できる文字数を制限することができます。
MaxLengthプロパティで設定した長さ以上の文字を入力すると、警告音が鳴ります。

MaxLengthプロパティ

◆バイト数で制限する方法


次のように入力される文字数をバイト数で制限することもできます。
次の例では入力できる文字数を10に設定しています。

Private Sub Text1_KeyPress(KeyAscii As Integer)
  Dim intDBcsFlag As Integer
  Dim intPrevLength As Integer
  
  '制限するバイト数
  Const LimitByte = 10

  '入力文字が[BackSpace]でなければ
  If KeyAscii <> vbKeyBack Then
        '2バイト文字の場合は1を足す
        If KeyAscii <> 0 Then intDBcsFlag = 1
            '既入力テキストのバイト数
        intPrevLength = LenB(StrConv(Text1.Text, vbFromUnicode))
            '入力後の文字数がバイト数を超える場合、
            '入力をキャンセル
        If intPrevLength - Text1.SelLength + _
                  intDBcsFlag > LimitByte Then
                  Beep
                  KeyAscii = 0
        End If
  End If
End Sub
  


▼ページトップへ