Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2009, 02:44   #1
xxxsas
Пользователь
 
Регистрация: 16.11.2008
Сообщений: 79
По умолчанию Ограничение ввода в Edit

увидел 1 код:
Код:
 Set <char, '0', '9'>Dig;
Dig<<'0'<<'1'<<'2'<<'3'<<'4'<<'5'<<'6'<<'7'<<'8'<<'9';
if(!Dig.Contains(Key))
{Key = 0;}
А мне надо чтобы можно было вставлять "-" (знак минус или тире), причем знак "-" должен быть доступен для написания только в начале текста в Edit и только 1 раз.
т.е. что - то вроде этого:

Код:
if(Key = '-')
{if (вначале строки и первый раз)
 {Set <char, '0', '9'>Dig;
 Dig<<'0'<<'1'<<'2'<<'3'<<'4'<<'5'<<'6'<<'7'<<'8'<<'9';
 if(!Dig.Contains(Key))
 {Key = 0;}}
else Key = 0;
Как можно решить задачу?
xxxsas вне форума Ответить с цитированием
Старый 21.01.2009, 11:43   #2
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,619
По умолчанию

Используйте MaskEdit. Там можно задавать маску ввода.
MaTBeu вне форума Ответить с цитированием
Старый 22.01.2009, 05:40   #3
xxxsas
Пользователь
 
Регистрация: 16.11.2008
Сообщений: 79
Вопрос

Цитата:
Сообщение от MaTBeu Посмотреть сообщение
Используйте MaskEdit. Там можно задавать маску ввода.
Насколько я знаю задание маски предпологает ввод по маске. Допустим маска: -00000.0000Получается, что пользователь должен ввести число с минусом(обязательно). А что делать если ему нужно ввести положительное число?

Поэтому мне и нужен пример ограничения ввода не по маске а по заданным доступным клавишам с проверкой(чтобы пользователь не мог ввести минус в середине числа, например 444-555).
xxxsas вне форума Ответить с цитированием
Старый 22.01.2009, 12:04   #4
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,619
По умолчанию

Ну значит вам нужно каждый раз при изменении текста в Edit (событие OnChange) проверять текст вручную.
MaTBeu вне форума Ответить с цитированием
Старый 22.01.2009, 12:36   #5
xxxsas
Пользователь
 
Регистрация: 16.11.2008
Сообщений: 79
По умолчанию

я думал что кто - то уже сталкивался с подобным и есть фрагмент кода(чтобы самому время не тратить), тем более что google выдает массу всего, но не то, что нужно...
xxxsas вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передать фокус ввода в поле Edit Arassir Помощь студентам 14 11.07.2012 12:37
Ограничение по вводу символов в Edit-e Alexij Общие вопросы Delphi 1 26.06.2008 16:27
Ограничение ввода символов. Delphi Alex_2017 Общие вопросы Delphi 2 05.06.2008 18:45
Ограничение ввода символов. Delphi Alex_2017 Помощь студентам 0 04.06.2008 17:26
Ограничение ввода в Edit Макс84 Компоненты Delphi 7 23.07.2007 09:38