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

Вниз

Проверка на корректный ввод чисел   Найти похожие ветки 

 
ruslan_as ©   (2002-03-01 13:52) [0]

Делаю проверку на коректный ввод чисел Edit через KeyPress.
Процедура срабатывает, но на экране у меня в Edit остаеться последний неправильный знак.

Хотя если я провожу процедуру
копирования с Edit1 на другие Edit в них приходит чистое число.


procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if ((Ord(key)<48) and (Ord(key)>48)) or ((Ord(key)>57) and (Ord(key)<>8)) then
begin
ShowMessage("Ошибка ввода!");
end;

end;


 
[NIKEL] ©   (2002-03-01 14:06) [1]

добовляй после ShowMesage("Ошибка ввода!");
такое
Key:=0;


 
Sasha9 ©   (2002-03-01 14:23) [2]

что это за условие странное
((Ord(key)<48) and (Ord(key)>48))


 
ruslan_as ©   (2002-03-01 15:20) [3]

>NIKEL Я добавил, но теперь он вместо неверной буквы добавляет 0, но это тоже для меня помеха. Мне бы, что бы он оставил предыдущее число.

>Sasha9 спасибо, сразу не заметил.


 
Sasha9 ©   (2002-03-01 15:51) [4]

наверное не 0 а #0


 
Kozhanov ©   (2002-03-01 15:57) [5]

> ruslan_as
А тебе обязательно посимвольно проверять ?


 
SuperBizon   (2002-03-01 16:07) [6]

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var k:integer;
m:byte;
begin
if key<>#8 then
begin
val(key,m,k);
if k>0 then
key:=#0;
end;
end;


 
ruslan_as ©   (2002-03-01 16:15) [7]

Спасибо всем! #0 работает отлично!



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
3-57329
Dim
2002-02-18 09:18
2002.03.18
Нет сортировки по Order by field


4-57550
Death
2002-01-18 21:03
2002.03.18
Дебаг...


1-57359
M@XIDROM
2002-02-28 16:57
2002.03.18
Scrollbar XP


4-57552
BWG
2002-01-18 20:54
2002.03.18
hHook: exe vs. dll


4-57575
md_test
2002-01-18 11:35
2002.03.18
WindowFromPoint возвращает handle на елемент окна (label, panel), а как узнать handle самого окна, на котором лежит етот елемент