- •2 Основы визуального программирования
- •Окно проектировщика формы
- •Окно редактора кодов
- •4 Структура программ Delphi
- •Структура проекта
- •5 Алфавит
- •6.3. Константы
- •6 Переменные и их типы
- •8 Процедуры и функции Процедуры
- •7 Строки и комментарии
- •Функции
- •10 События События в Delphi
- •11 Строковый тип данных
- •12 Символьные типы данных
- •13 Конструкция if
- •14 Цикл for
- •15 Свойства формы
- •Свойства формы
- •16 Свойства кнопки батон
- •17 Инструкция множественного выбора case
- •18 Инструкция (цикл) while
- •19 Компонент панель
- •20 К омпоненты GroupBox и CheckBox
- •21 Компонент RadioGroup
- •22 Свойства Enabled и Visiblе
- •23 Компоненты использующие для создания главного меню
- •24 Компоненты использующие для создания всплывающего меню Всплывающее меню
- •25 Массивы одномерные и многомерные
- •26 Не визуальные компоненты делфи
- •27 Оператор цикла repeat...Until Форма About средствами Delphi
10 События События в Delphi
delphi
События в программировании, как и события реального мира - это какие-либо операции, происходящие в установленное время. Установленное время - это не конкретное время с точки зрения часов, это просто отклики на какие-то другие действия и изменения. События присущи объектно-ориентированному программированию и являются одной из важных черт операционной системы Windows. Работа программ с визуальным (графическим) интерфейсом немыслима без событий. Delphi предоставляет полный доступ для работы с событиями и немного упрощает программирование обработчиков событий. Целью урока является знакомство с наиболее часто используемыми событиями, а также с приёмами написания обработчиков для них.
Где найти события? В одном из первых уроков было упомянуто, что каждый объект имеет свойства и события и всё это доступно через Object Inspector. Список всех событий, которые поддерживает объект, находится на вкладке EventsИнспектора Объектов. Формат данных аналогичен закладке со свойствами: слева указывается название события, а справа - обработчик, который присвоен событию. Обратите внимание, что всем событиям обычно даются названия, начинающиеся со слова "On" (англ. - "на"). Это хороший тон и довольно устоявшаяся традиция. Такие названия позволяют быстро отличить события от свойств. По аналогии со свойствами, событиям дают вполне логичные имена. Увидев незнакомое событие, в 95% случаев только по названию можно догадаться, когда событие происходит. Если же событие не совсем понятно, либо хочется больше узнать о нём, можно воспользоваться встроенной справочной системой Delphi. Для этого нужно установить курсор на строку с интересующим событием и просто нажать F1 - справочная система откроется на странице с информацией о выбранном событии (если, конечно, оно описано в справке). Для всех стандартных компонент в справочной системе информации предостаточно. Если используется какой-либо сторонний компонент, то описание следует искать в документации, которая идёт вместо с самим компонентом. Некоторые компоненты (в основном - крупные пакеты из большого числа компонент) самостоятельно интегрируют свою документацию в справочную систему Delphi при установке. Автоматическое создание обработчиков событий Обработчик события - это набор команд, которые выполняются при вызове события. Создавать обработчики можно двумя способами: прямо в среде Delphi - автоматически, и программным путём, т.е. во время выполнения программы. Создать обработчик очень просто: достаточно дважды щёлкнуть по полю рядом с названием события в Инспекторе Объектов и откроется редактор кода с заготовкой обработчика. Остаётся лишь написать требуемый код между begin и end (курсор уже будет стоять в том месте) и обработчик готов. Как видите, всё довольно просто и быстро. Однако в предыдущих уроках Вы видели, что обработчик создавался и просто при двойном щелчке по объекту на форме... Да, действительно, в этом случае тоже создаётся обработчик. Но этот способ ничем не отличается от только что описанного, просто для каждого объекта задано событие по умолчанию, для которого создаётся обработчик при двойном щелчке. Как правило, это самые используемые события. Например, для кнопки это конечно же будет щелчок по ней. Для нестандартных компонент, если событие по умолчанию не обозначено, берётся первое попавшееся из всех, а если событие всего одно, то выбор тем более очевиден. После того, как обработчик создан, на вкладке Events рядом с названием события появится название обработчика для него. Это название также можно вписать и вручную или выбрать из списка, в котором содержатся названия всех обработчиков. Имена обработчикам даются также не случайно: берётся имя объекта и к нему дописывается название события. Например, если есть кнопка Button1 и её событие OnClick, то обработчик получит название Button1Click. Опять-таки, по имени обработчика можно догадаться о событии, к которому он относится. Событие может иметь только один обработчик! Тем не менее, если требуется задать несколько обработчиков, можно сделать следующим образом: единственный указанный обработчик просто программно запускает другие обработчики. Такой приём часто используется. Однако, обратного запрета не существует: один обработчик может быть привязан к разным событиямобъекта и даже к разным объектам. Для этого нужно в строке интересующего события у объекта выбрать имя обработчика из списка. Обработчик с точки зрения программного кода
Между именем объектам (TForm1) и именем обработчика (Button1Click) находится точка - это символ указания на то, что Button1Click принадлежит TForm1. При работе с любыми структурами точка указывает на принадлежность элемента этой структуре. Сейчас это не играет большой роли - просто небольшое отступление. К примеру, в языке C++ таким разделителем служит комбинация "минус и знак больше": -> Раздел описаний здесь тоже присутствует, просто он является пустым. Как и положено, расположен он между заголовком обработчика и разделом реализации, т.е. между первой и второй строкой. При необходимости объявления переменных или констант этот раздел описывается обычным образом - добавление ключевого слово var или const и описанием переменных или констант. |
|
|
