Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.25;
Скачать: CL | DM;

Вниз

В Edit только числа...   Найти похожие ветки 

 
killer ©   (2004-07-08 00:27) [0]

Как можно сделать так, чтобы в Edit можно было вводить только целые и вещественные числа? Т.е. допустимые символы это: "0" "1" 2 "3" "4" "5" "6" "7" "8" "9" ","...


 
KilkennyCat ©   (2004-07-08 00:30) [1]

1) использовать маску
2) запретить в событии кейпресс ввод друкгих символов.


 
killer ©   (2004-07-08 00:35) [2]

KilkennyCat это два способа? Я думаю первый лучше... Т.к. во втором надо еще определять такие кнопки как Delete, BackSpase...


 
killer ©   (2004-07-08 00:47) [3]

А как запретить ввод других символом? какой фонкцией запретить приписывать наподходящие символы?


 
killer ©   (2004-07-08 00:51) [4]

например я пишу....

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (Key<>"0") and и т.д. then что тут писать?;
end;


 
Palladin ©   (2004-07-08 01:04) [5]

key:=#0;


 
KilkennyCat ©   (2004-07-08 01:07) [6]


> killer ©   (08.07.04 00:35) [2]


маска не всегда красива... в принципе, маска удобна лишь для ввода строгих форм.


 
killer ©   (2004-07-08 01:14) [7]

А если вставят текст?


 
killer ©   (2004-07-08 01:15) [8]

из буфера в смысле...


 
Palladin ©   (2004-07-08 01:18) [9]

Отлавливай WM_PASTE... в TEdit ессно...


 
KilkennyCat ©   (2004-07-08 01:19) [10]


> killer ©   (08.07.04 01:15) [8]


два варианта: проверить буфер и запретить, если не соответсвует. проверить в событии ончейндж и запретить, если не соответствует.


 
MIGUR   (2004-07-08 01:23) [11]

Попробуй так, отлавливая нажатия клавиш:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if    NOT (Key in ("0".."9", ".", #8, #13)) // разрешенные клавиши
OR (    (Key = ".")                  // пользователь нажал "."
AND (POS (".", Edit1.Text) > 0)) // десятичная точка уже имеется
then
begin
Key := #0;
MessageBeep (MB_OK);
end;
end;


 
KilkennyCat ©   (2004-07-08 01:26) [12]


> MIGUR   (08.07.04 01:23) [11]


Если придраться :) нет разрешения курсора, да и удалять можно двумя клавишами...


 
Palladin ©   (2004-07-08 01:26) [13]

Свежая мысль...


 
KilkennyCat ©   (2004-07-08 01:29) [14]


> Palladin ©   (08.07.04 01:26) [13]


Все свежее - хорошо протухшее старое :)


 
Amoeba ©   (2004-07-08 11:38) [15]

Есть и готовые компоненты. Поищи на http://www.torry.net



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

Текущий архив: 2004.07.25;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.032 c
14-1088866556
DeadMeat
2004-07-03 18:55
2004.07.25
Часы


4-1086810580
Ske4er
2004-06-09 23:49
2004.07.25
Win Hot Keys


4-1086088360
Stany
2004-06-01 15:12
2004.07.25
библиотека для программирования на API


14-1088771528
han_malign
2004-07-02 16:32
2004.07.25
И это печатают в "серьезных" изданиях...


11-1077864777
ALeX.B.
2004-02-27 09:52
2004.07.25
ICMP из ICS реально дольше работает чем ICMP из INDY(не KOL)!