Информатика. Программирование в Delphi
180
6. Создадим процедуру
ComboBox1KeyPress
для обработки события
OnKeyPress
компонента
ComboBox1
. Оформим ее следующим образом.
//процедура выполняется при нажатии клавиши в поле ComboBox1
procedure TForm1.ComboBox1KeyPress (Sender: TObject; var Key: Char);
begin
case key of
//разрешены цифры и клавиша BackSpace
'0'..'9',#8:;
//точка или запятая будут заменены на десятичный разделитель
',','.':
begin
//замена на десятичный разделитель
key:=DecimalSeparator;
//запрет на ввод в число второго десятичного разделителя
if pos(key,ComboBox1.Text)<>0 then
key:=#0;
end
//остальные символы запрещены
else
key:=#0;
end;
end;
Создадим процедуру
ComboBox2KeyPress
для обработки события
OnKeyPress
компонента
ComboBox2
. Оформим ее следующим образом.
//процедура выполняется при нажатии клавиши в поле ComboBox2
procedure TForm1.ComboBox2KeyPress (Sender: TObject; var Key: Char);
begin
case key of
//разрешены цифры и клавиша BackSpace
'0'..'9',#8:;
//точка или запятая будут заменены на десятичный разделитель
',','.':
begin
//замена на десятичный разделитель
key:=DecimalSeparator;
//запрет на ввод в число второго десятичного разделителя
if pos(key,ComboBox1.Text)<>0 then
key:=#0;
end
//остальные клавиши запрещены
else