Примеры функций
Листинг 6.3. Примеры функций
// проверяет, является ли символ допустимым
// во время ввода целого числа
function Islnt(ch : char) : Boolean;
begin
if (ch >
= '0'} and (ch <= '9') // цифры
or (ch = 113) // клавиша <Enter>
or (ch = #8) // клавиша <Backspace>
then Islnt := True // символ допустим
else Islnt := False; // недопустимый символ
end;
// проверяет, является ли символ допустимым
// во время ввода дробного числа
function IsFloat(ch : char; st: string) : Boolean;
begin
if (ch >
= '0') and (ch <= '9') // цифры
or (ch = #13) // клавиша <Enter>
or (ch = #8) // клавиша <Backspace>
then
begin
IsFloat := True; // символ верный
Exit; // выход из функции
end;
case ch of
'-': if Length(st) = 0
then IsFloat := True; ',':
if (Pos(',',st) = 0)
and (st[Length(st)]'>
= '0') and (st[Length(st)] <= '9')
then // разделитель можно ввести только после цифры // и если он еще не введен
IsFloat := True; else // остальные символы запрещены
IsFloat := False;
end;
end;