Страница: 1 |
Страница: 1 |
Вопрос: Ввод чисел в текстовое поле без ноля в начале
Добавлено: 10.08.08 02:11
Автор вопроса: Яр
Всем привет! Помогите, пожалуйста!
Есть текстовое поле, в которое необходимо вводить число (например 72). Как сделать так, чтобы невозможно было бы ввести 072 или 0072 и т.д. При приведенном ниже коде это получается, но только если в текстовом поле не было цыфр. А если там были цыфры, то после их удаления можно ввести все, что угодно.
Private Sub txt_KeyPress(KeyAscii As Integer)
If txt.Text = "" Then
Select Case KeyAscii: Case 49 To 57, 8: Case Else: KeyAscii = 0: End Select
Else
Select Case KeyAscii: Case 48 To 57, 8: Case Else: KeyAscii = 0: End Select
End If
End Sub
Спасибо всем огромное!
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
$Костян
ICQ: 448495665
Вопросов: 11
Ответов: 33
Профиль | | #1
Добавлено: 10.08.08 10:50
первое, что пришло в голову:
If (Not IsNumeric(txt.Text)) Or (Mid$(txt.Text, 1, 1) = "0" Then 'Тут делай, что считаешь нужным
End Sub
Номер ответа: 2
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #2
Добавлено: 10.08.08 15:51
txt.Text = Val(txt.Text)
End Sub
Номер ответа: 3
Автор ответа:
Серёга
ICQ: 262809473
Вопросов: 17
Ответов: 561
Web-сайт:
Профиль | | #3
Добавлено: 10.08.08 16:56
Static Inaccessibility As Boolean
If Inaccessibility Then Exit Sub
Inaccessibility = True
Text1.Text = CStr(Val(Text1.Text))
If Text1.Text = "0" Then Text1.Text = ""
Text1.SelStart = Len(Text1.Text)
Inaccessibility = False
End Sub
Номер ответа: 4
Автор ответа:
Яр
Вопросов: 18
Ответов: 24
Профиль | | #4
Добавлено: 10.08.08 18:25
Спасибо всем огромное!