Студопедия
rus | ua | other

Home Random lecture






Проверка введенных данных


Date: 2015-10-07; view: 342.


Чтобы быть уверенным в правильности вводимых данных, необходимо проверить содержимое введенной строки, когда она должна представлять числовое значение. Встроенная функция IsNumeric() возвратит значение True, если строка окажется числом, и значение False, если строка не числовая. Рассмотрим два примера, которые используют эту функцию. В первом – в случае ввода в текстовое окно не числовой информации – на экран выводится сообщение «Ошибка» и фокус ввода остается в этом окне до тех пор, пока не будет правильно заполнено текстовое окно:

Пример 1.

Private Sub Txt1_LostFocus()

If Not IsNumeric(Txt1) Then

MsgBox «Ошибка!»

Txt1.SetFocus

End If

End Sub

Пример 2. Фрагмент программы не позволяет вводить нецифровые символы. При этом знак «+» и «-» могут быть введены только в 1-ю позицию. Оригинальность программы состоит в том, что при вводе данных из буфера обмена вставка может быть только в том случае, если в целом полученная цепочка символов имеет строго цифровое представление.

Private Sub Txt1_Change()

Dim log As Boolean

Static old_dl As Integer

log = Len(Txt1)=0 Or Len(Txt1)=1 And (Left$(Txt1,1) = "+" Or _

Left$(Txt1, 1) = "-")

 

If log Or IsNumeric(Txt1) Then old_dl = Len(Txt1): Exit Sub

Txt1.SelStart = Txt1.SelStart - (Len(Txt1) - old_dl)

Txt1.SelLength = Len(Txt1) - old_dl

Txt1.SelText = ""

 

End Sub


<== previous lecture | next lecture ==>
Ввод текста в текстовые поля (TextBox) | Элементы управления для принятия решения
lektsiopedia.org - 2013 год. | Page generation: 0.003 s.