Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Пример 2. Контроль ввода с использованием Case




Дано: текстовое поле Edit2.

Требуется: разработать процедуру, контролирующую ввод символов (событие OnKeyPress) соответствующих алфавиту вещественных чисел. При вводе недопустимого символа подменить его пустым значением (код #0). Использовать оператор case.

 

После назначения события 1 Object TreeView®Edit1

1Object Inspector ®ÌEvents ®OnKeyPress,

в разделе interface будет объявлена процедура Edit2KeyPress(Sender: TObject; var Key: Char). В разделе implementation появится текст шаблона этой процедуры.

Текст, добавленный разработчиком, выделен курсивом.

 

procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);

Begin

case Key of

'0'..'9':; // диапазон допустимых символов, оператор отсутствует

',':; // допустима запятая

#8:; // допускается использование <Backspace>

else Key:= Chr(0); // другие символы подменяются пустым символом

End;

End;

Параметр-переменная Key соответствует коду символа нажатой клавиши. Если вводимый символ не соответствует указанному символьному множеству ['0'..'9', '+', '-', ‘,’, #8], то параметру-переменной Key будет присвоено пустое значение (функция Chr(0) возвращает пустое значение, код #0).

 

else
0’..’9’:  
Начало
Конец
Схема алгоритма. Контроль ввода вещественных чисел procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char)  
Key  
‘,’:  
#8  
Key:=Chr(0)
Подмена недопустимого символа пустым

Преобразования Строка-Число и Число-Строка

Для ввода или отображения чисел используют функции преобразования.

StrToInt (S: String): Integer - преобразует символы строки S в целое число.

IntToStr (Value: Integer): String - преобразует целое число Value в строку символов.

StrToFloat (S: String): Extended - преобразует символы строки S в вещественное число.

StrToIntDef (S: String; Default: Integer): Integer- преобразует строку S в целое число, если строка содержит недопустимый символ, то возвращается значение Default, равное номеру ошибочного символа строки S.

FloatToStr (Value: Extended): String - преобразует вещественное значение Value в строку символов.

FloatToStrF (Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): String - преобразует вещественное значение Value в строку символов с учётом параметра Format.

Значения параметра Format:

ffExponent - экспоненциальный формат;

ffFixed - фиксированное положение разделителя дробной и целой частей;

ffGeneral - универсальный формат, соответствует ffFixed, если количество значащих цифр > Precision, и Value >= 0,00001, то число представляется в формате ffExponent.

Precision – общее количество значащих цифр.

Digits - количество цифр в десятичном порядке, число округляется

Val(S: string; var V; var Code: Integer) - процедура преобразует строку S в числовое значение переменной V целого или вещественного типа. Переменная Code = 0, если преобразование успешно. Если преобразование в число невозможно, то Code присваивается порядковый номер недопустимого символа.

TButton – кнопка

Компонент класса TButton - используют для управления программой. Основное событие - OnClick (нажатие кнопки).

Свойства (properties) компонента:

Cancel: Boolean - если установлено значение True, событие OnClick возникает при нажатии клавиши Esc.

Default: Boolean - если установлено значение True, событие OnClick возникает при нажатии клавиши Enter.

В отличие от большинства других видимых компонентов кнопка TButton является компонентом системы Windows, и поэтому не может изменять свой цвет произвольным образом - она его меняет вместе с изменением палитры Windows. Кнопка всегда имеет системный цвет clBtnFace.

После размещения кнопки на форме и назначения в окне Инспектора объектов события OnClick, в модуль будет добавлено описание шаблона процедуры обработки события.

Type

TForm1 = class (TForm)

…………….

Button1: TButton;

procedure Button1Click(Sender: TObject);

…………………..

Implementation

……………………………..

procedure TForm1.Button1Click(Sender: TObject);

Begin

…………….

End;

…………………

 





Поделиться с друзьями:


Дата добавления: 2016-10-27; Мы поможем в написании ваших работ!; просмотров: 587 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Своим успехом я обязана тому, что никогда не оправдывалась и не принимала оправданий от других. © Флоренс Найтингейл
==> читать все изречения...

2407 - | 2226 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.