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

Уроки для начинающих   21 февраля 2011  Автор статьи: admin 
geekbrains.ru/

В прошлом уроке я показал в общих чертах про среду разработки 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.  Приведем простейший пример обработчика, добавив в него строку [cci lang=’delphi’]showmessage(‘Это сообщение должно быть выведено при нажатии на кнопку’);[/cci] Должно получиться:

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

[note]Компиляция — это процесс создания исполняемого файла, например с расширением *.exe, основываясь на указанном компилятору программном коде.[/note]

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

Новые версии Delphi способны обнаруживать типичные и частые ошибки еще до компиляции.

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

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

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

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

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

Кнопке Button1  задайте обработчик события OnClick [cci lang=’delphi’]close;[/cci]

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

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

[cc lang=’delphi’]Button1.caption:=’Эта кнопка была нажата’;

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

Checkbox1.checked:=true;

Label1.caption:=’Это простой пример обработчика события’; [/cc]

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

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

[cci lang=’delphi’]Listbox1.items.add(‘Вы опять нажали на кнопку Button1’);[/cci]

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

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

[cci lang=’delphi’]if checkbox1.checked then showmessage(edit1.text); [/cci]

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

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

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

[cci lang=’delphi’]label1.caption:=’x=’+inttostr(form1.left)+’ y=’+inttostr(form1.top);  [/cci]

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

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

  • Lexa Lex 04

    А где видео можно найти?

  • Serjik

    очень хорошый урок

  • Олег

    Супер!!!!!!!

  • Анатолий Цимбалов

    Отличный урок! Только вот с примером №5 не могу разобраться. Ошибка выходит

  • Murat Satvaldin

    Я не знаю англо, это помешает в программирование

Научиться программировать

  • на Delphi

  • на Java

  • на C++

geekbrains.ru/
geekbrains.ru/