Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проверка на ввод нечисловых символов и запятой. [D7, XP]


Страницы:   1 2 3

Neket ©   (2008-09-24 09:33:00) 

Доброе утро. Подскажите как сделать проверку введенного текста в Edit на наличие буков и если вводится дробное число то чтобы разделитель был "," а не точка.
т.е. доллжны вводится цифры, в том числе и вещественные а если будут буквы или разделитель не запятая а точка то либо самому менять или шоб ошибку выдавало. Заранее благодарен.


Сергей М.   (2008-09-24 10:10:00) [41]


> Neket   (24.09.08 10:05) [6]


> Вариант предложенный Vlad Oshin ©   (24.09.08 09:35) [1]
> подошел очень даже не плохо


В нем нет "защиты от дурака" - ничто мешает натыкать, к примеру, кучу запятых, да еще и в "неположенных местах")

К тому же ты ничего не сказал про знак вводимого числа


Neket   (2008-09-24 10:10:00) [42]

Нее Delit работает.
Поросенок Винни-Пух ©- харош глумиться.


Поросенок Винни-Пух   (2008-09-24 10:08:00) [43]

A Delete запретить?


Neket   (2008-09-24 10:05:00) [44]

Всем спасибо. Вариант предложенный Vlad Oshin ©   (24.09.08 09:35) [1]подошел очень даже не плохо. Остался только один вопрос. Как плюс ковсему разрешить еще и использование BackSpase. Какой у него код?


Sergey13   (2008-09-24 09:54:00) [45]

> [0] Neket   (24.09.08 09:33)

Можно заменить TEdit на компонент, заточенный под ввод именно числовых данных.


Dennis I. Komarov   (2008-09-24 09:40:00) [46]


> и FloatToStr

наоборот...


Dennis I. Komarov   (2008-09-24 09:39:00) [47]


> Neket   (24.09.08 09:33)  

На каком основании ты навязываешь пользователю свой дробный разделитель? Такой софт должен быть уничтожен до инсталяции...

Использую DecimalSeporator (кажися так пишется) и FloatToStr

Так же в OnChange можно проверять что ввели, а лучше это делать по окончанию ввода


Сергей М.   (2008-09-24 09:38:00) [48]


> чтобы разделитель был "," а не точка


С пом. StringReplace замени точки на запятые, если таковые имеются.

А что за дискриминация, почему юзерунедозволено использовать в кач-ве разделителя то что ему удобней при вводе ?


> как сделать проверку


Например, с пом. TryStrToFloat


Vlad Oshin   (2008-09-24 09:35:00) [49]

onKeyPress(...Key:char);
if Key not in ['0'..'9',','] then Key:=#0;


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо