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

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

Как посчитать сколько таких символов в стороке? [D7, Win95/98, Win2k]


_Просто Гость_ ©   (2004-12-14 20:55:00) 

Есть желание сделать в поле Edit возможнось ввода только цифр и знака разделителя разрядов. Ввод только цифр и разделитьея реализовать получилось, но разделитель можно ввести много раз( типа - 25.63..58, а хочется, чтобы можно было только 1 раз ввести разделитель разрядов. Может есь какие оригинальные рецепты для реализации?


_Просто Гость_   (2004-12-14 21:12:00) [1]

Супер! Вот ОНО! Спасибо!


Юрий Зотов   (2004-12-14 21:07:00) [2]

> Может есь какие оригинальные рецепты для реализации?

Зачем для такой простой вещи искать оригинальные рецепты?

В Edit1.OnKeyPress:
if not (Key in [ #8, DecimalSeparator, '0'..'9']) or
(Key = DecimalSeparator) and (Pos(DecimalSeparator, Edit1.Text) > 0) then
Key := #0;


Anatoly Podgoretsky   (2004-12-14 21:06:00) [3]

and POS('.', S) > 0


_Просто Гость_   (2004-12-14 21:03:00) [4]

Сейчас сделано так:


procedure Tfowners.TeEdit3KeyPress(Sender: TObject; var Key: Char);
begin
if ((key < '0') or (key > '9')) and
   (key <>  DecimalSeparator) then key := #0;


Хочется вести счет без цикла такое возможно?


VMcL   (2004-12-14 21:00:00) [5]

>> _Просто Гость_  (14.12.04 20:55)

TryStrToFloat и подобные функции не помогут?


DiamondShark   (2004-12-14 21:00:00) [6]

В том месте, где получилось реализовать ввод только цифр и разделителя, добавить условие "в строке уже есть разделитель".


TUser   (2004-12-14 20:59:00) [7]

В OnChange проверяй try StrToFloat() except showmessage('Poshel v jopu') end;


Алхимик   (2004-12-14 20:59:00) [8]

Ввести счётчик разделителей?


Наверх

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