События и процедуры обработки событий
Рисунок 1.6 - Вкладка “События” окна Object Inspector.
События (Events) – это некоторые, завершившееся во время работы приложения, действия пользователя или приложения. Событиям присваиваются стандартные имена. Ниже, в таблице 1.1 приведены примеры некоторых событий.
| Таблица 1.1 – Некоторые события визуальных компонент | |
---|---|---|
OnClick | При щелчке кнопкой мыши | |
OnMouseDown | При нажатии кнопки мыши | |
OnMouse Up | При отпускании кнопки мыши | |
OnMouseMove | При перемещении мыши | |
OnKeyPress | После ввода символа с клавиатуры | |
OnKeyDown | При нажатии клавиши клавиатуры | |
OnKeyUp | При отпускании нажатой клавиши клавиатуры | |
OnCreate | При создании объекта (формы, элемента управления). | |
OnPaint | При появлении окна на экране в начале работы программы, после появления части окна, которая, например, была закрыта другим окном и в других случаях | |
QnEnter | При получении элементом управления фокуса | |
OnExit | При потере элементом управления фокуса |
В Delphi есть возможность запрограммировать реакцию приложения на событие, то есть сделать так, чтобы приложение выполняло некоторую работу в ответ на определенные действия пользователя. Следует учитывать, что значительную часть обработки события берет на себя компонент. Поэтому программист должен разрабатывать процедуру обработки события только в том случае, если реакция на событие отличается от стандартной процедуры или не определена.
В левой колонке вкладки Events перечислены имена событий, которые может воспринимать выбранный компонент. Если для события определена процедура обработки события, то в правой колонке, рядом с именем события, выводится имя этой процедуры. Если процедура не определена, то поле пустое.
Для обработки события можно использовать уже созданную процедуру, выбрав ее имя из раскрывающегося списка, а если подходящая процедура еще не создана, то следует ее создать.
Для создания процедуру обработки события, нужно сделать двойной щелчок мышью в поле имени процедуры обработки соответствующего события. В результате этого откроется окно редактора кода, в котором будет создан шаблон процедуры обработки события. Шаблон процедуры расположен в разделе Implementation модуля, и мигающий курсор приглашает Вас запрограммировать обработку события. Кроме того, объявление процедуры (ее заголовок) появляется в описании класса Tform1.
Имя процедуры появляется и на древовидной карте модуля в левой части окна. Карта упрощает поиск нужных частей модуля. Чтобы найти процедуру в модуле, достаточно щелкнуть по ее имени на дереве.
На рисунке 1.7 показано окно редактора кода с заготовкой процедуры обработки щелчка (Click) по кнопке Button1.
Delphi присваивает процедуре обработки события имя, которое состоит из трех частей. Первая часть имени это имя класса, вторая часть идентифицирует компонент, третья часть идентифицирует событие. В нашем примере класс- TForml, имя компонента – Button1, событие – Click.
Вы можете изменить имя процедуры, но делать это следует в окне Object Inspector.
В окне редактора кода между словами begin и end нужно вписать инструкции, реализующие функцию обработки события.
Редактор кода выделяет ключевые слова языка программирования (procedure, var, begin, end, if и др.) полужирным шрифтом, что делает текст программы более выразительным, и облегчает восприятие структуры программы.
Помимо ключевых слов редактор кода выделяет курсивом комментарии.
При написании кода часто приходится обращаться к полям компонент. Для упрощения ввода имен полей, встроенный редактор кода выводит список имен всех свойств объекта, как только вы нажмете точку после ввода имени компонента. При нажатии клавиши «пробел», имя свойства переносится в текст. Этот список имен, которые можно использовать в данный момент, вызывается и при нажатии комбинации клавиш Ctrl+Пробел.
Рисунок 1.7- Окно редактора кода с шаблоном процедуры
Если необходимо удалить процедуру, то достаточно удалить инструкции, написанные Вами, оставив шаблон пустым. После синтаксической проверки проекта, пустые процедуры исчезнут. Синтаксическую проверку можно вызвать функцией меню Project->Syntax Check.
- Ответственный за выпуск: Бивойно п.Г. , декан факультета электронных и информационных технологий, канд. Техн. Наук, доцент
- Содержание
- 4.1.4 Разработка интерфейса проекта 66
- 5.1.7 Разработка интерфейса проекта 81
- Введение
- Лабораторная работа № 1. Знакомство с интегрированой средой разработки (иср)“Delphi 7”
- Краткие теоретические сведения о иср “Delphi 7”
- Конструктор стартовой формы
- Главное окно иср “Delphi 7”
- Главное меню
- Панели инструментов
- Палитра компонентов
- Окно просмотра дерева объектов
- Окно редактора кода
- Закладка редактора кода модуля
- Закладка редактора кода файла проекта
- Окно Object Inspector
- Закладка описания свойств объекта
- События и процедуры обработки событий
- Создание простейшего проекта
- Разработка интерфейса проекта
- Создание процедуры инициализации приложения
- Создание процедуры вычисления результата
- Улучшение проекта
- Сохранение проекта
- Продолжение работы с проектом на другом компьютере
- Содержание отчета
- Контрольные вопросы и задания
- Рекомендованая литература
- Лабораторная работа № 2. Вещественный тип данных. Расчеты по формулам
- Краткие теоретические сведения
- Язык программирования Object Pascal
- Объекты, переменные и константы
- Классы и типы
- Объявление объектов и переменных
- Вещественный тип данных
- Выражение
- Стандартные функции для данных вещественного типа
- Инструкция присваивания
- Форматирование результатов расчетов
- Создание проекта «Расчет по формуле»
- Создание интерфейса
- Компонент ole-контейнер
- Компонент Group Box
- Компонент Memo
- Завершение работы над интерфейсом
- Создание процедур обработки событий Процедура очистки протокола
- Процедура инициализации формы
- Процедура выполнения расчета по формуле
- Контольный пример
- Трассировка процедуры
- Содержание отчета
- Контрольные вопросы
- Рекомендованая литература
- Лабораторная работа № 3. Подпрограммы Краткие теоретические сведения
- Правила написания подпрограмм
- Описание процедуры
- Вызов процедуры
- Описание функции
- Вызов функции
- Способы передачи параметров в подпрограммы
- Передача параметров по значению
- Передача параметров по наименованию
- Расположение подпрограмм
- Подпрограммы обработки событий класса формы
- Другие подпрограммы класса формы
- Размещение подпрограмм в модуле
- Размещение подпрограмм в других модулях
- Размещение подпрограмм внутри других подпрограмм
- Область действия имен
- Реализация проекта «Процедуры и функции»
- Создание процедур и функций Процедуры инициализации
- Процедура считывания коэффициентов уравнения
- Функция для расчета по формуле
- Использование дополнительного модуля
- Завершение работы над проектом
- Исследование созданного приложения
- Анализ передачи параметров по наименованию
- Анализ передачи параметров по значению
- Содержание отчета
- Контрольные вопросы
- Операции над логическими данными
- Логические выражения
- Разветвляющиеся алгоритмы
- Программирование разветвлений Условный оператор if…then…else
- Оператор варианта case
- Реализация проекта «Организация разветвлений»
- Разработка интерфейса проекта
- Компоненты для работы со списками
- Процедуры обработки событий выбора из списка
- Процедуры обработки событий onKeyPress
- Решение квадратного уравнения
- Содержание отчета
- Контрольные вопросы
- Лабораторная работа № 5. Построение циклов с инструкциями „while” и „repeat”
- Краткие теоретические сведения
- Циклические алгоритмы
- Инструкция while…do
- Инструкция repeat…until
- Прерывание цикла
- Итерационные алгоритмы
- Пример итерационного алгоритма для вычисления кубического корня
- Задание для самостоятельной работы
- Алгоритмы вычисления сумм бесконечных рядов
- Задание для самостоятельной работы
- Создание проекта WhileRepeat
- Разработка интерфейса проекта
- Компоненты PageControl и TabSheet
- Компонент CheckBox
- Создание закладки для вычисления корня
- Создание закладки для вычисления синуса
- Создание процедур и функций Процедура для контроля ввода данных
- Процедура вычисления кубического корня
- Процедура вычисления синуса
- Задания для расчетно-графической работы № 2
- Содержание отчета
- Контрольные вопросы
- Целые типы данных
- Символьные типы данных
- Ограниченный тип данных.
- Применение инструкции цикла for
- Табулирование значений функций
- Форматирование результатов при выводе таблиц
- Строки символов
- Операции над строками
- Процедура Delete
- Процедура Insert
- Функция Pos
- Функции Trim, TrimLeft, TrimRight
- Создание проекта «Применение цикла for»
- Разработка формы «Табулирование функции» Разработка интерфейса
- Создание вспомогательных процедур и функций
- Создание процедуры табулирования функции
- Разработка формы «Таблица “символ-код”» Разработка интерфейса
- Создание процедуры вывода таблицы символ-код
- Разработка формы «Обработка последовательностей целых чисел»
- Разработка интерфейса
- Создание процедуры обработки последовательности целых чисел
- Создание многодокументной (mdi)формы
- Задание для самостоятельной работы
- Содержание отчета
- Контрольные вопросы
- Рекомендованая литература