Вниз
Скачать: CL | DM;

Обработка TEdit   Найти похожие ветки 

 
ss300   (2004-04-12 16:13) [0]

Как обработать TEdit так чтобы до разделительный запятой можно было N символов ввести, а после M ?
например
123456,123
а больше не позволяло ввести что либо лишнее..
помогите начинающему программеру:)
заранеес пасибо


 
clickmaker ©   (2004-04-12 16:18) [1]

TMaskEdit
Mask = !999999,999;1;_


 
ss300   (2004-04-12 16:20) [2]

Извини, но TMaskEdit не канает.. :( надо именно в TEdit


 
clickmaker ©   (2004-04-12 16:23) [3]

Экий вы капризный! :) Тогда OnKeyPress перехватывай и в случае достижения лимита Key := #0


 
TButton ©   (2004-04-12 16:29) [4]

элементарно

onKeyPress
begin
 if Pos(",",Edit1.Text)=0
 then  // запятой нет
   begin
     if (Length(Edit1.Text)>=maxbefore)and(key<>Ord(","))
       then Key:=#0;
   end
 else  // запятой есть
   begin
     if Length(Copy(Edit1.Text,Pos(",",Edit1.Text),Length(Edit1.Text))>=maxafter
       then Key:=0;
   end;
end;

правда этот вариант не учитывает, то что пользователь может ползать по Edit"у. но счас я немного по соображаю и двину новую мысль.


 
TButton ©   (2004-04-12 16:31) [5]

я тут прикинул, вобщем,
1. нужно посчитать
before - число знаков перед запятой
after - число знаков после запятой
2. определить позицию курсора
до или перед запятой
3. проверить достижение лимита согласно результатам предыдущего пункта
4. если лимит достигнут - занулить key


 
ss300   (2004-04-12 16:54) [6]

Спасибо TButton!


 
serge35   (2004-04-12 17:08) [7]

Батюшки, уже ракетные комплексы ПВО в качестве ников пошли...


 
clickmaker ©   (2004-04-12 17:15) [8]


> serge35   (12.04.04 17:08) [7]
> Батюшки, уже ракетные комплексы ПВО в качестве ников пошли...

Типа "попробуй не ответить!" :))


 
serge35   (2004-04-12 17:24) [9]

надо срочно переименовываться, например в F15 или СУ-31.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
1-1082195232
Leviathan
2004-04-17 13:47
2004.05.02
Выделение синим в StringGrid


14-1081765401
Dmitriy O.
2004-04-12 14:23
2004.05.02
Кто имел опыт по размещению рекламы на своем сайте ?


14-1081519373
hgd
2004-04-09 18:02
2004.05.02
Что такое Application.Messagebox


7-1075122260
Thick
2004-01-26 16:04
2004.05.02
Температура процессора


1-1082275000
Master Paleva
2004-04-18 11:56
2004.05.02
Как прописать что-либо в реестр из Делфи




   Наверх