Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Только числа


Автор: DarkAngel 27.3.2005, 15:51
Вот опять я достаю своими тупыми вопросами....как на ввод разрешить только числовые значения?то есть запретить буквы???

Автор: Staruha 27.3.2005, 17:15
Был такой вопрос .Не нашла.Помню
Цитата
If Text1.text = Number

что-то навроде этого.

Автор: SOY 27.3.2005, 17:35
если на ввод в textbox, то...
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii >= 48 And KeyAscii <= 57 Then
MsgBox "ввел число"
End If
End Sub
Добавлено @ 17:41
да, еще, чтобы вообще запретить ввод, вместо строки Msgbox... введи:
KeyAscii = 0
beep

Автор: SOY 27.3.2005, 17:49
А так разрешено вводить только числа
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyBack Then
exit sub
ElseIf KeyAscii < Asc(0) Or KeyAscii > Asc(9) Then
KeyAscii = 0
Beep
End If
End Sub

Автор: cardinal 27.3.2005, 19:40
В FAQ'е был?

Автор: efedron 28.3.2005, 09:24
самое нормальное, это подать сообщение окну для ввода текста сообщение wm_numeric (или что-то похожее), тогда вводиться будут только цифры.

Автор: Staruha 28.3.2005, 19:04
If Not IsNumeric

Автор: amt 28.3.2005, 22:05
Мне что-то смутно помнится, что у Textbox есть сво-во определяющее тип данных. Я когда-то с ним баловался. И, по-моему, если установить для него числовой формат, то при вводе будет возникать ошибка, которую и можно обработать и выдавать, например, сответсвующее сообщение.

Автор: cardinal 28.3.2005, 23:01
Блин, я же писал посмотрите в FAQ'e smile
Вот оно:
http://vingrad.ru/VB-VB-002126

Автор: DarkAngel 29.3.2005, 09:47
Всем пасиб!!!!!!!Тут разрулила помощь SOY ,но благодарен всем...

Автор: Yakov 4.4.2005, 17:15
код не мой, но сам недавно столкнулся с проблемой. очень выручил

Private Sub TxtID_KeyDown(KeyCode As Integer, Shift As Integer)
txtID.Locked = IIf((KeyCode > 47 And KeyCode < 58) Or (KeyCode > 95 And KeyCode < 106) Or _
(KeyCode = 8) Or (KeyCode = 46) Or (KeyCode = 188), IIf(KeyCode = 188, _
IIf(InStr(1, txtID, ",") = 0 And txtID.SelStart <> 0, False, True), False), True)
End Sub

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)