С Новым годом! Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 25.10.2011
Сообщений: 43

Запрет на ввод цифр в TextBox

29.12.2013, 20:58. Показов 3088. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как запретить ввод цифр в поле TextBox?? Заранее спасибо)
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.12.2013, 20:58
Ответы с готовыми решениями:

Ввод в TextBox определенных комбинаций цифр
Помогите ! Нужно вводить в тексбокс определенные комбинации цифр, например:1234 и 6789 все остальные комбинации цифр, на угад так...

Запрет ввода определенных символов в TextBox
Пожалуйста помогите как написат программу чтобы в текстбоксе нельзя было бы ставить 1)ПРОБЕЛ, 2)ЗАПЯТАЯ, 3)ТОЧКА, 4)КОВЫЧКИ, ...

Запрет ввода определенных символов в TextBox
Можно ли в каком-то свойстве текстбокса выбрать тип вводимых данных? Т.е., допустим текстбокс нужен для ввода чисел. Тогда даже если...

5
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38167 / 21102 / 4307
Регистрация: 12.02.2012
Сообщений: 34,690
Записей в блоге: 14
29.12.2013, 21:09
Лучший ответ Сообщение было отмечено The trick как решение

Решение

За мои без малого два года на форуме, подобная тема поднималась несколько раз:

Visual Basic
1
2
3
Private Sub Text1_KeyPress(KeyAscii As Integer)
        If KeyAscii >= 48 And KeyAscii <= 57 Then KeyAscii = 0
End Sub
1
5 / 5 / 2
Регистрация: 28.04.2012
Сообщений: 26
30.12.2013, 04:09
А теперь попробуйте сделать так: печатаем текст из цифр (к примеру 1234567890) копируем (Ctrl+C) в буфер обмена, и вставляем в наш текст бокс (Ctrl+V or Shift+Insert).
По мимо этого требуется еще и перехват основной функции и отслеживания буфера обмена и Drag and Drop. GWL_WNDPROC
0
58 / 62 / 2
Регистрация: 03.10.2013
Сообщений: 415
30.12.2013, 04:33
А если свойство Enabled в False установить? Или этого не достаточно?=)
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38167 / 21102 / 4307
Регистрация: 12.02.2012
Сообщений: 34,690
Записей в блоге: 14
30.12.2013, 13:29
Цитата Сообщение от WebRockefeller Посмотреть сообщение
А теперь попробуйте сделать так:
- а еще лучше вот так: найти окно в списке окон и послать соответствующее сообщение... Тут главное - вовремя остановиться. Ведь для чего это нужно? Чтобы цифровой ввод не попал в программу. Приведенной меры вполне достаточно. Если нет - можно дописать уже в коде обрабатывающей программы что-то вроде:

Visual Basic
1
2
3
4
5
6
    for i%=1 to len(Text1.Text)
        if isNumeric(mid$(Text1.text,i%,1) then 
           '::: сделай, что нужно
           Exit Sub
        end if
    Next i%

Цитата Сообщение от RTFM_VLAd Посмотреть сообщение
А если свойство Enabled в False установить?
- тогда вообще ничего ввести будет нельзя.
0
5 / 5 / 2
Регистрация: 28.04.2012
Сообщений: 26
30.12.2013, 19:02
Для проверки размести на форме TextBox имя, которого Text1.

Этот код без Win32 API. Но лучше делать на Win32 API.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Dim KeyPressDB As Boolean
 
Private Sub Text1_Change()
    Dim SaveTextDS As String
    Dim SaveTextDL As Long
    Dim ForDL As Long
    
    SaveTextDS = Text1.Text
    SaveTextDL = Len(SaveTextDS)
    
    If KeyPressDB = False Then
        For ForDL = 0 To 9
            If (InStr(1, SaveTextDS, CStr(ForDL)) > 0) Then SaveTextDS = Replace(SaveTextDS, CStr(ForDL), "")
        Next
       If Not (Len(SaveTextDS) = SaveTextDL) Then
            Text1.Text = SaveTextDS
       End If
        KeyPressDB = False
    End If
 
End Sub
 
Private Sub Text1_KeyPress(KeyAscii As Integer)
    If (KeyAscii >= 48 And KeyAscii <= 57) Then
        KeyAscii = 0
        KeyPressDB = True
    Else
        If (KeyAscii = 1 Or KeyAscii = 3 Or KeyAscii = 8 Or KeyAscii = 22 Or KeyAscii = 24 Or KeyAscii = 26) Then
            KeyPressDB = False
        Else
            KeyPressDB = True
        End If
    End If
End Sub
Тут происходит проверка на то, что если пытаются каким либо образом положить в текс бокс цифры они удаляются.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.12.2013, 19:02
Помогаю со студенческими работами здесь

Запрет на ввод и возвращение данных
Здравствуйте. Занимаюсь созданием программы и не получается решить задачу. Подскажите пожалуйста,как можно реализовать запрет на ввод...

Запрет на ввод элементов в текстовое поле
Как блокировать текстовое поле - я знаю. Но вот иной подход... Чтобы можно было вводить текст, нужно предварительно ввести точку....

Запрет на ввод цифр в TextBox
Нужно, чтобы в TextBox вводились только буквы. Запрет на ввод букв удалось реализовать, а наоборот что-то не получается. Заранее спасибо

Как сделать запрет на ввод цифр в textBox?
Как сделать запрет на ввод цифр в textBox

Как в VBA в поле Textbox сделать запрет на ввод более одного слова (или запрет на ввод пробелов)?
Добрый день. Нужно, чтобы в поле TextBox можно было ввести не более одного слова (в противном случае выводится сообщение). Приведенный ниже...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru