![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
В Edit только числа... [D7, WinXP]
killer © (2004-07-08 00:27:00)Как можно сделать так, чтобы в Edit можно было вводить только целые и вещественные числа? Т.е. допустимые символы это: "0" "1" 2 "3" "4" "5" "6" "7" "8" "9" ","...
Amoeba (2004-07-08 11:38:00) [1]Есть и готовые компоненты. Поищи на http://www.torry.net
KilkennyCat (2004-07-08 01:29:00) [2]
> Palladin © (08.07.04 01:26) [13]
Все свежее - хорошо протухшее старое :)
KilkennyCat (2004-07-08 01:26:00) [3]
> MIGUR (08.07.04 01:23) [11]
Если придраться :) нет разрешения курсора, да и удалять можно двумя клавишами...
Palladin (2004-07-08 01:26:00) [4]Свежая мысль...
MIGUR (2004-07-08 01:23:00) [5]Попробуй так, отлавливая нажатия клавиш:
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:19:00) [6]
> killer © (08.07.04 01:15) [8]
два варианта: проверить буфер и запретить, если не соответсвует. проверить в событии ончейндж и запретить, если не соответствует.
Palladin (2004-07-08 01:18:00) [7]Отлавливай WM_PASTE... в TEdit ессно...
killer (2004-07-08 01:15:00) [8]из буфера в смысле...
killer (2004-07-08 01:14:00) [9]А если вставят текст?
KilkennyCat (2004-07-08 01:07:00) [10]
> killer © (08.07.04 00:35) [2]
маска не всегда красива... в принципе, маска удобна лишь для ввода строгих форм.
Palladin (2004-07-08 01:04:00) [11]key:=#0;
killer (2004-07-08 00:51:00) [12]например я пишу....
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (Key<>'0') and и т.д. then что тут писать?;
end;
killer (2004-07-08 00:47:00) [13]А как запретить ввод других символом? какой фонкцией запретить приписывать наподходящие символы?
killer (2004-07-08 00:35:00) [14]KilkennyCatэто два способа? Я думаю первый лучше... Т.к. во втором надо еще определять такие кнопки как Delete, BackSpase...
KilkennyCat (2004-07-08 00:30:00) [15]1) использовать маску
2) запретить в событии кейпресс ввод друкгих символов.