Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
laboratornye_Delphi.doc
Скачиваний:
16
Добавлен:
17.05.2015
Размер:
2.78 Mб
Скачать

Контрольные вопросы

  1. Особенности создания компонентов пользователя.

  2. Добавление новых свойств к базовым компонентам.

  3. Особенности инсталляции компонента пользователя.

Домашнее задание № 6Компоненты: Поля редактирования, группа переключателей. Обработка событий клавиатуры

Цель работы: изучение компонентов TRadioGroup и их основных свойств, обработка событий клавиатуры.

Теоретические сведения Компонент группа переключателей (tRadioGroup)

Компонент TRadioGroup используют для создания группы переключателей. Когда пользователь устанавливает один из переключателей группы, все остальные автоматически снимаются. Таким образом, какие-либо два переключателя, размещенные на форме, могут быть установлены одновременно, только тогда, когда они расположены в разных группах.

Группа переключателей помещается в форму с использованием кнопки на стандартной панели инструментов. Некоторые свойства группы переключателей приведены в табл. 6.1.

Таблица 6.1. Свойства TRadioGroup

Свойство

Описание свойства

Примеры значений

Items

Заголовки отдельных переключателей. Каждый переключатель вводится в отдельной строке и ему автоматически присваивается номер, начиная с 0

«Покупка» (произвольный ряд символов)

ItemIndex

Номер переключателя включенного в данный момент

0 (число, номер переключателя)

Colums

Способ расположения переключателей на экране – в одном столбце или нескольких

1 (число колонок)

Пример 6.1. Создадим программу, в которой при выборе соответствующего возраста и нажатии кнопки «Ответ» в окно редактирования выводится соответствующий комментарий. Экранная форма основной программы показана на рис. 6.1. Приведем фрагмент кода программы, обрабатывающей событие при нажатии кнопки «Ответ»:

procedure TForm1.Button1Click(Sender: TObject);

begin

with Edit1 do

case RadioGroup1.ItemIndex of

0: text:='Ваш возраст до 20 лет';

1: text:='Ваш возраст от 21 до 30 лет';

2: text:='Ваш возраст от 31 до 40 лет';

3: text:='Ваш возраст от 41 до 50 лет';

4: text:='Ваш возраст от 51 до 60 лет';

5: text:='Ваш возраст после 60 лет';

end;

end;

Рис. 6.1. Экранная форма примера 6.1

События клавиатуры

В оконных компонентах Delphi определены события, связанные с клавиатурой и представленные в табл. П.6.2.

Пример 6.2. Создадим программу, в которой в окно редактирования пользователю разрешается вводить только целые числа без знака, разделенные запятыми и пробелами. Экранная форма основной программы изображена на рис. 6.2. Приведем фрагмент кода программы, обрабатывающей событие ввода данных в поле редактирования:

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

begin

if not (key in ['0'..'9',' ',',']) then

key:=#0;

end;

Рис. 6.2. Экранная форма примера 6.2

Таблица П.6.2. События, связанные с клавиатурой

Событие

Описание

OnKeyDown

Событие наступает при нажатии пользователем любой клавиши. Можно распознать нажатые клавиши, включая функциональные, и кнопки мыши, но нельзя распознать символ нажатой клавиши

OnKeyPress

Событие наступает при преобразовании нажатой пользователем клавиши в символ. Можно распознать только символ, различить символ в верхнем или нижнем регистре, а также различить буквы кириллицы и латиницы, но нельзя распознать функциональные клавиши и кнопки мыши.

OnKeyUp

Событие наступает при отпускании пользователем любой клавиши. Можно распознать нажатые клавиши, включая функциональные, и кнопки мыши, но нельзя распознать символ отпускаемой клавиши

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]