![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Корректный ввод
KEBZ © (2006-09-20 21:55:00)Всем сдрасте. Плиз хелп!
Как сделать защиту от некорректного ввода символов в TEdit нуна вводить цифры от [0..4] а чтоб другие симвалы не вводилиь. падскажите плз как?
MacroDenS (2006-09-21 10:59:00) [1]на OnChange обработка по другому будет выглядить.
примерно так:
var
i:Integer;
tmp, tmp1:String;
begin
tmp:=Edit1.Text;
tmp1:='';
for i:=1 to length(tmp) do
if (tmp[i] in ['0'..'4']) then tmp1:=tmp1+tmp[i];
edit1.Text:=tmp1;
//переводим курсор в конец текста
sendmessage(edit1.Handle, 256, vk_end, 0);
sendmessage(edit1.Handle, 257, vk_end, 0);
end;
Leonid Troyanovsky (2006-09-21 10:11:00) [2]
> MacroDenS © (21.09.06 09:32) [8]
> OnKeyPress
OnChange
--
Regards, LVT.
MacroDenS (2006-09-21 09:34:00) [3]только незабудь еще поставить #8 и #9, а то бекспейс и таб перестанут работать в TEdit:
if not(key in ['0'..'4', #8, #9]) then key:=#0;
MacroDenS (2006-09-21 09:32:00) [4]OnKeyPress
begin
...
if not(key in ['0'..'4']) then key:=#0;
...
end;
Leonid Troyanovsky (2006-09-21 09:23:00) [5]
> KEBZ (20.09.06 21:55)
> Как сделать защиту от некорректного ввода символов в TEdit
> нуна вводить цифры от [0..4]
Для этой цели пользуют не TEdit, а TComboBox, TListBox, TUpDown
или, даже, TGroupBox.
--
Regards, LVT.
Германн (2006-09-21 01:32:00) [6]
> KEBZ (20.09.06 23:47) [5]
>
> а через
> for
> i := 1 to 4 do не палучется?
>
Кончай клоунаду. Надоело.
KEBZ (2006-09-20 23:47:00) [7]а через
forне палучется?
i := 1 to 4 do
KEBZ (2006-09-20 23:45:00) [8]в яндаксе
Virgo_Style (2006-09-20 23:32:00) [9]А где искал?
KEBZ (2006-09-20 22:49:00) [10]а где инфу мона взять по OnKeyDown?
Desdechado (2006-09-20 22:40:00) [11]OnKeyDown ?
может, лучше выкидывать все лишнее перед использованием введенного, а так пусть тулят, что хотят?