Информатика. Программирование в Delphi
165
Edit:=Sender as TEdit;
case key of
//разрешены цифровые клавиши и забой BackSpace
'0'..'9',#8:;
//нажаты запятая или точка
',','.':
begin
//в поле точка и запятая заменяются
//десятичным разделителем
key:=DecimalSeparator;
//не позволяет вводить десятичный разделитель
//повторно в одну строку
if pos(key,Edit.Text)<>0 then
key:=#0;
end;
//в поле знак минус
'-':
//если свойство
Tag
равно нулю, то
//компоненты
Edit1
и
Edit2
if Edit.Tag=0 then
begin
//если в поле
Text
знак минус не обнаружен
if pos(key,Edit.Text)=0 then
//добавление знака минус
//в начало поля
Edit.Text:='-'+Edit.Text;
//символ запрещен
key:=#0;
end
//компонент
Edit3
else
//знак минус запрещен
key:=#0;
//все остальные символы запрещены
else
key:=#0;
end;
end;
6. Добавьте объявление процедуры
EditChange
после объявления компонентов
формы.
procedure EditChange(Sender: TObject);
Далее в разделе
Implementation
добавьте процедуру
EditChange
.
//происходит при изменении текста в поле
Text