Вниз
Скачать: 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.025 c
7-1078918644
xex
2004-03-10 14:37
2004.05.02
Как в ХР выключить монитор? в 98 то без проблем,


1-1082026826
demonyator
2004-04-15 15:00
2004.05.02
Клавиатурный хук не ловит первую букву в каждом новом окне


1-1082228872
oleg_SYS
2004-04-17 23:07
2004.05.02
Как изменить свойство компоненты другой формы


4-1079025491
KME
2004-03-11 20:18
2004.05.02
WINAPI в чистом виде


6-1078042857
Ozone
2004-02-29 11:20
2004.05.02
TCP/IP




   Наверх