Delphi для начинающих – Урок 2 — События

В прошлом уроке я показал в общих чертах про среду разработки Delphi и ее компоненты. Теперь мы разберем устройство событий в Delphi. События являются одним из ключевых понятий в программировании на Delphi.  Все объекты из библиотеки визуальных компонентов (VCL) Delphi, как и объекты реального мира, имеют свой набор свойств и свое поведение — набор откликов на события, происходящие с ними. Список событий для данного объекта, на которые он реагирует, можно посмотреть, например, в инспекторе объектов во вкладке Events. Поведение объекта на то или иное событие называется обработчиком события. Создание приложений в среде разработки Delphi подразумевает создание компонентов, настройки их свойств и программирование обработчиков событий. Созданию компонентов и настройке их свойств мы уже научились из предыдущего урока. Главной задачей этого урока будет написание обработчиков событий. [note]В этом уроке все скриншоты будут представлены с Delphi 2010. Более старые и новые версии Delphi имеют аналогичный интерфейс, поэтому особых затруднений возникнуть не должно.[/note]

[warning]Все дальнейшие уроки рассчитаны на программистов, хорошо освоивших основы языка программирования Pascal.[/warning] Для того, чтобы задать обработчик событий, нужно выбрать объект на форме, например кнопку Button1, и в инспекторе объектов на вкладке Events дважды кликнуть левой кнопкой мыши, по текстовому полю, рядом с событием, которое вы хотите обработать. Создадим событие  OnClick для компонента Button1. Откроется окно редактора программного кода:

  Перед нами обработчик события OnClick компонента Button1. Обработчики в Delphi выглядят как процедуры в Pascal, поэтому нетрудно догадаться, что код обработчика нужно писать между ключевыми словами begin иend.  Приведем простейший пример обработчика, добавив в него строку showmessage('Это сообщение должно быть выведено при нажатии на кнопку'); Должно получиться:
 

Процедура showmessage в Delphi выводит текстовое сообщение в виде окна. Теперь прокомпилируем, т.е создадим исполняемый файл нашей программы.

[note]Компиляция — это процесс создания исполняемого файла, например с расширением *.exe, основываясь на указанном компилятору программном коде.[/note] Прокомпилировать программу можно, нажав на кнопку , которая расположена на верхней панели инструментов. Если в вашем программном коде были найдены ошибки (синтаксические, фактические или просто опечатки), то во время компилирования в новых версиях Delphi откроется окно, в котором будет указано наличие ошибок в коде и их количество. Например, если вместо showmessage из нашего предыдущего примера, мы напишем  showmmessage, то программа укажет нам на ошибку:

  Новые версии Delphi способны обнаруживать типичные и частые ошибки еще до компиляции.
  Если же ошибок найдено не было, то компиляция будет успешно завершена, в папке с сохраненным проектом и всеми другими файлами (*.pas, *.dpr и т.д) будет создан исполняемый *.exe файл, который при успешной компиляции автоматически запустится. В результате откроется окно созданного нами приложения:

Нажмем на кнопку Button1 и увидим наше сообщение:

  При нажатии на кнопку OK окно с сообщением закрывается.

Далее я приведу другие примеры, которые обязательно рекомендую попробовать самим.

Пример 1. Закрытие окна приложения.

Кнопке Button1  задайте обработчик события OnClick close;

Пример 2. Изменение свойств компонентов.

Создайте компоненты Button1, Memo1, CheckBox1, Label1. Кнопке Button1  задайте обработчик события OnClick:

1

2

3

4

5

6

7
 
Button1.caption:='Эта кнопка была нажата';



Memo1.text:='Вы нажали на кнопку Button1';



Checkbox1.checked:=true;



Label1.caption:='Это простой пример обработчика события';

Пример 3. Добавление строки в ListBox1

Создайте компоненты ListBox1 и Button1. Кнопке Button1  задайте обработчик события OnClick:

Listbox1.items.add('Вы опять нажали на кнопку Button1');

Пример 4. Вывод содержимого текстового поля при условии

Создайте компоненты Button1, CheckBox1, Edit1. Кнопке Button1  задайте обработчик события OnClick:

if checkbox1.checked then showmessage(edit1.text);

В данном примере при нажатии на кнопку Button1, будет выведено содержимое текстового поля Edit1, только при том условии, что установлена галочка в поле CheckBox1. Условные операции мы рассмотрим в следующих уроках.

Пример 5. Вывод информации о местоположении окна приложения на экране.

Создайте компонент Label1 и Button1. Кнопке Button1  задайте обработчик события OnClick:

label1.caption:='x='+inttostr(form1.left)+' y='+inttostr(form1.top); 

В результате программа выведет местоположение окна приложения по оси X и Y соответственно.

На этом урок закончен. В следующем уроке я покажу как в Delphi работать с переменными. Не забывайте подписаться на ежедневную рассылку статей по программированию!

Категория: delphi 7 | Добавил: ghost_mod (14.09.2016)
Просмотров: 498 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email:
Подписка:1
Код *: