Поделиться через


Свойство MaxLength для пользователей Visual Basic 6.0

Обновлен: Ноябрь 2007

В Visual Basic 6.0 свойство MaxLength элемента управления TextBox полностью контролирует длину строки, которая может быть введена в текстовое поле или отображена в нем. Хотя программно можно вводить более длинные строки, они автоматически укорачиваются до длины, установленной свойством MaxLength.

В Visual Basic 2008 длина строки, введенной программно, переопределяет значение свойства MaxLength.

В следующем примере кода демонстрируется разница в поведении:

' Visual Basic 6.0 
Text1.MaxLength = 5
Text1.Text = "Longer than five"
MsgBox Text1.Text       ' Displays "Longe".
' Visual Basic 
Text1.MaxLength = 5
Text1.Text = "Longer than five"
MsgBox(Text1.Text)       ' Displays "Longer than five".

Дальнейшие действия

  • Необходимо просмотреть проект приложения, чтобы определить, было ли запланированным такое поведение, при котором длина текста в текстовом поле всегда должна ограничиваться значением свойства MaxLength.

    • Если такое поведение было запланировано, нужно найти все вхождения кода, в котором устанавливается значение свойства Text, и добавить код для укорачивания строки, по аналогии со следующим примером:

      ' Old code
      Text1.Text = SomeString
      
      ' Replacement code
      If Len(SomeString) > Text1.MaxLength Then
        SomeString = Microsoft.VisualBasic.Left(SomeString, Text1.MaxLength)
      End If
      
      Text1.Text = SomeString
      
    • Если такое поведение не было запланировано, необходимо оставить код в исходном виде. Пользователь все еще будет ограничен значением MaxLength, но программно можно присваивать строки длиннее значения параметра MaxLength.

См. также

Основные понятия

Элемент управления TextBox для пользователей Visual Basic 6.0