подскажите пожалуйста как запретить (на VB6) ввод с клавиату

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Marsik91
Начинающий
Начинающий
 
Сообщения: 1
Зарегистрирован: 08.10.2007 (Пн) 19:29

подскажите пожалуйста как запретить (на VB6) ввод с клавиату

Сообщение Marsik91 » 08.10.2007 (Пн) 19:39

подскажите пожалуйста как запретить (на VB6) ввод с клавиатуры букв и прочих символов кроме чисел в TextBox ?

burik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 514
Зарегистрирован: 03.11.2005 (Чт) 22:04
Откуда: Беларусь, Рогачев

Сообщение burik » 08.10.2007 (Пн) 20:01

Код: Выделить всё
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal nwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long

Const GWL_STYLE = (-16)
Const ES_NUMBER = &H2000
...
f& = GetWindowLong(Text1.hWnd, GWL_STYLE)
r& = SetWindowLong(Text1.hWnd, GWL_STYLE, f& Or ES_NUMBER)
Между слухов, сказок, мифов,
просто лжи, легенд сомнений
мы враждуем жарче скифов
за несходство заблуждений
Игорь Губерман

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 08.10.2007 (Пн) 21:09

А можно ещё в событии Key_Press проверять параметр KeyAscii и если не попадает под нужный диапазон (ну например чисел), то просто обнулять его. Так можно запретить ввод вообще произвольных символов, а не только цифр, букв или спецсимволов...
Подпись проходит рефакторинг

burik
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 514
Зарегистрирован: 03.11.2005 (Чт) 22:04
Откуда: Беларусь, Рогачев

Сообщение burik » 08.10.2007 (Пн) 22:03

Lumen
Только юзер еще может вставить текст в текст бокс из буфера, а может чужая прога будет туда текст совать. Да и человеку надо именно цифры, а не другие знаки. Так зачем же жизнь услажнять?
Между слухов, сказок, мифов,
просто лжи, легенд сомнений
мы враждуем жарче скифов
за несходство заблуждений
Игорь Губерман


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Majestic-12 [Bot], Yandex-бот и гости: 90

    TopList