Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/26: Рейтинг темы: голосов - 26, средняя оценка - 4.85
1 / 0 / 0
Регистрация: 03.06.2009
Сообщений: 6

Как задать ограничение на ввод только чисел в поле DBEdit?

03.06.2009, 11:26. Показов 4947. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть форма, на ней поле для ввода DBEdit. Надо сделать, чтобы юзер мог ввести только числа. Маску наложить, как я понял можно только в MaskEdit, но мне нужен DBEdit. Как реализовать проще всего?
if (DBEdit->OnKeyPress != (и погнал аски-коды цифр))
{
bla-bla-bla
} ???
но это как-то тупо, а другого что-то не приходит в голову ничего((
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.06.2009, 11:26
Ответы с готовыми решениями:

Разрешить ввод в DbEdit только чисел от 1 до 5
нужно что-бы в DBEdit вводились только числа 1,2,3,4,5. т.е. с 1 до 5.

Ограничение на ввод данных только в одно поле?
Можно ли поставить такое ограничение, чтоб можно было или оставить значение null во всех полях или при заполнении одного поля - заполнеть...

Как поставить ограничение на ввод только числа
у меня вопрос ) )) как поставить ограничение на ввод например я хочу вводить только числа ))) есть ли что то подобное как...

4
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
03.06.2009, 11:53
для эдитов юзаю такое:
C++
1
2
3
4
void __fastcall TEditForm::R_a_grKeyPress(TObject *Sender, char &Key)
{
  if(!((Key >= '0' && Key <= '9') || Key == VK_BACK || Key == '.')) Key = 0x00;
}
попробуй...
1
1 / 0 / 0
Регистрация: 03.06.2009
Сообщений: 6
03.06.2009, 12:07  [ТС]
Цитата Сообщение от VoodooMan Посмотреть сообщение
для эдитов юзаю такое:
C++
1
2
3
4
void __fastcall TEditForm::R_a_grKeyPress(TObject *Sender, char &Key)
{
  if(!((Key >= '0' && Key <= '9') || Key == VK_BACK || Key == '.')) Key = 0x00;
}
попробуй...

То, что надо!! Спасибо!!
0
 Аватар для Hotbed
50 / 4 / 0
Регистрация: 02.04.2011
Сообщений: 60
19.05.2011, 16:02
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
void __fastcall TEditForm::R_a_grKeyPress(TObject *Sender, char &Key) { if(!((Key >= '0' && Key <= '9') || Key == VK_BACK || Key == '.')) Key = 0x00; }
А если в консольном варианте с предложением пользователю ввести фразу, содержащую и цифры и буквы чтоб потом программа исключала буквы и выводила строку состоящую только из чисел

у меня вот какая зарисовка только че то не работает, а точнее работает если строка содержит сначала ряд чисел а после нее идут буквы
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# include <iostream>
# include <cstdio>
# include <cstring>
using namespace std;
 
int main()
{
char A[]={};
gets(A);
int a = strlen(A);
//cout << " \n"<< a ;
 
    for (int i=0; i<a;i++)
    {if (*(A+i)>'9')
    *(A+i)=0x00;
    if (*(A+i)<'0')
    *(A+i)=0x00;}
 
int c = strlen(A);
//cout << " \n"<< c ;
for (int t=0; t<c;t++)
cout << "\n" << *(A+t);
cin.get();
}
Может я не правильно заменяю символы может в *(A+i)=0x00; поставить что нибудь другое? Подскажите пожалуйста.
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.05.2011, 13:45
Hotbed, ну вообще неплохо бы знать, что символ с кодом 0 - это признак конца строки
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.05.2011, 13:45
Помогаю со студенческими работами здесь

Ввод в текстовое поле только чисел, которые больше 100
Нужно ввести в текстовое поле только цифры больше 100. как это сделать? код, если можно. как разрешить ввод в текстовое поле только...

Ограничение на ввод символов (разрешить ввод только цифр)
Всем доброго времени суток! Я начал изучать С++ и у меня возник такой вопрос: Как ограничить ввод символов (разрешить ввод только...

Как сделать ограничение на ввод отрицательных чисел
нужно сделать,что бы значение переменной x всегда было &gt; 0 , если оно &lt; 0 или =0 ,то вывод ошибки через msgbox . x вводится через...

Как задать ввод только букв верхнего регистра?
Народ. как в Python Tkinter задать ввод только букв верхнего регистра? и чтобы при вводе цифр выдавал ошибку. а на 4 попытку ввода...

Ввод только цифр, русских и латинских букв в DBEdit c работающей клавишей Backspace
У меня получилось сделать чтобы вводились только цифры. void __fastcall TForm4::DBEdit4KeyPress(TObject *Sender, char &amp;Key) { if...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Данные берутся из. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru