TEdit в Делфи6.0

Ronnie 24.05.2004 - 13:50 | Как сделать, чтобы в TEdit можно было вводить ТОЛЬКО десятичные числа, или (другой вариант) - ТОЛЬКО шестнадцатиричные числа. Я так представляю, что нужно отслеживать только-что введенный символ, или отключать "запрещенные" клавиши? Помогите, пожалуйста, начинающему.
x77 1 - 24.05.2004 - 13:57 | см. TEdit.OnKeyPress
VaS 2 - 24.05.2004 - 14:35 | begin if not (Key in ['0'..'9', #8]) then Key := #0; end;
Ronnie 3 - 24.05.2004 - 18:09 | Мужики, БОЛЬШОЕ спасибо. Учиться мне еще и учиться. Еще раз спасибо!
Vas 4 - 25.05.2004 - 08:19 | А мона еще так с обработкой нажатия точек и запятых if Key in ['.',','] then Key:=DecimalSeparator; if not(Key in['0'..'9',#8,DecimalSeparator,'-','e','E']) then Key:= #0;
Ronnie 5 - 28.05.2004 - 11:55 | Еще вопросик. Почему в таком случае в Edit2 на один символ меньше, чем в Edit1? procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if not (Key in ['0'..'f', #8]) then Key := #0; Edit2.Text:=edit1.Text; end; В идеале я бы хотел в Edit1 вводить число от $00 до $ff, а в Edit2 чтобы появлялся его ASCII-код. Поделитесь опытом.
tvv 6 - 28.05.2004 - 12:12 | может это Edit2.Text:=edit1.Text; повесить на событие OnChange
Ronnie 7 - 28.05.2004 - 12:32 | Спасибо, че-то сам не догнал, теперь все получилось. Код такой: procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if not (Key in ['0'..'f', #8]) then Key := #0; end; procedure TForm1.Edit1Change(Sender: TObject); begin if edit1.Text<>'' then Edit2.Text:=chr(strtoint('$'+edit1.Text)) else edit2.Text:=''; end;

>>