Проверка на символы,помощь.

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
dalmask
Сообщения: 1
Зарегистрирован: 12 май 2013, 13:03

Добрый день,я на этом форуме новенький,около 2-лет назад выполнял задания по Информатике,сейчас снова началась учеба,после армии все забыл..
Нужна помощь в задании.
Вводить символы до тех пор,пока количество введенных латинских букв не меньше 10-ти.Вывести на экран все введенные латинские буквы.
Буду очень благодарен если восстановите мне память.)
pashulka
Сообщения: 831
Зарегистрирован: 24 ноя 2004, 03:46
Контактная информация:

Создайте форму и текстовое поле, и вводите в это поле данные, а сам процесс ввода контролируйте с помощью соответствующих событий, например, Text_KeyPress(KeyAscii As Integer)
pashulka
Сообщения: 831
Зарегистрирован: 24 ноя 2004, 03:46
Контактная информация:

Вот небольшой пример(рыба) как, с помощью уже упомянутого события, можно "отлавливать" ввод нежелательных символов.

Код: Выделить всё

Private iText As String

Private Sub Text1_KeyPress(KeyAscii As Integer)
    Select Case KeyAscii
        Case 65 To 90, 97 To 122
           If Len(iText) = 10 Then
              MsgBox iText, vbCritical, "Лимит =10 достигнут"
              KeyAscii = 0: iText = "": Me.Hide
           End If
           iText = iText & Chr(KeyAscii)
        Case Else
           KeyAscii = 0
    End Select
End Sub
Кроме того, стоит подумать о запрете вставки скопированного текста, его перетаскивания с помощью мышки (разумеется, если в VB это по-умолчанию, возможно), а также о том, как должна работать программа в случае удаления уже введённых латинских букв.
Ответить