Обработчик события OnClick


При щелчке по кнопке мышью в работающей программе возникает событие OnClick (По щелчку). Пока это событие никак не обрабатывается программой, и поэтому «нажатие» кнопки не приведет ни к каким последствиям. Чтобы заставить программу реагировать на нажатие кнопки, необходимо написать на языке Object Pascal фрагмент программы, который называется обработчиком события.

Этот фрагмент должен представлять собой последовательность текстовых строк, в которых программист указывает, что именно должна делать программа в ответ на нажатие кнопки. Фрагмент оформляется в виде специальной подпрограммы языка Object Pascal - процедуры.

Чтобы заставить Delphi самостоятельно сделать заготовку для процедуры обработчика события OnClick, дважды подряд без заметной паузы щелкните мышью по вновь вставленному компоненту. В ответ Delphi активизирует окно кода, и вы увидите в нем такой текстовый фрагмент:

PROCEDURE TForm1.Button1Click(Sender: TObject);

BEGIN

END;

Слово PROCEDURE извещает компилятор о начале подпрограммы-процедуры (в Delphi могут использоваться также подпрограммы-функции; в этом случае вместо PROCEDURE (процедура) используется слово FUNCTION (функция). За ним следует имя процедуры TForm1.ButtonlClick. Это имя - составное: оно состоит из имени класса TForm1 и собственно имени процедуры ButtonlClick.

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

Однажды создав класс, программист может включать его экземпляры (копии) в разные программы или в разные места одной и той же программы. Такой подход способствует максимально высокой продуктивности программирования за счет использования ранее написанных фрагментов программ. В состав Delphi входит несколько сотен классов, созданных программистами корпорации Inprise (так называемых стандартных классов). Совокупность стандартных классов определяет мощные возможности этой системы программирования.

Каждый компонент принадлежит к строго определенному классу, а все конкретные экземпляры компонентов, вставляемые в форму, получают имя класса с добавленным числовым индексом. По используемому в Delphi соглашению все имена классов начинаются с буквы Т. Таким образом, имя TFormI означает имя класса, созданного по образцу стандартного класса TForm. Если вы посмотрите начало текста в окне кода, то увидите следующие строки:

TYPE

TForm1 = CLASS(TForm)

Button1: TButton;

Label1: TLabel;

PROCEDURE ButtonlClick(Sender: TObject);

PRIVATE

{ Private declarations }

PUBLIC

{ Public declarations }

END;

VAR

Form1: TForm1;

Строка

TForm1 = CLASS(TForm)

определяет новый класс TForm1, которыйпорожден от (создан по образцу) стандартного класса TForm. Строка

Form1: TForm1;

создаетэкземпляр этого класса с именем Form1. Стандартный класс TForm описывает пустое Windows-окно, в то время как класс TFormI описывает окно с уже вставленными в него компонентами метка и кнопка. Описание этих компонентов содержат строки

Button1: TButton;

Label1: TLabel;

Они указывают, что компонент Button1 (Кнопка1) представляет собой экземпляр стандартного класса TButton, а компонент Label1 (Метка1) -экземпляр класса TLabel.

За именем процедуры TForm1 ButtonlClick в круглых скобках следует описание параметра вызова

Sender: TObject

(параметр с именем Sender принадлежит классу TObject). Как мы увидим дальше, процедуры могут иметь не один, а несколько параметров вызова или не иметь их вовсе. Параметры вызова (если они есть) служат настройке реализованного в процедуре алгоритма на выполнение конкретной работы. Параметр Sender вставлен Delphi «на всякий случай»: с его помощью подпрограмма ButtonlClick может, при желании, определить, какой именно компонент создал событие OnClick.

Вся строка в целом

PROCEDURE TForm1.ButtonlClick(Sender: TObject);

называется заголовком процедуры. Ее завершает символ «;». Этот символ играет важную роль в Object Pascal, т.к. показывает компилятору на конец предложения языка. Из отдельных предложений составляется весь текст программы. В конце каждого предложения нужно ставить точку с запятой – это обязательное требование синтаксиса языка. Три следующие строки определяюттело процедуры:

BEGIN

END;

Слово BEGIN (начало) сигнализирует компилятору о начале последовательности предложений, описывающих алгоритм работы процедуры, а слово END(конец) - о конце этой последовательности. Наполнить тело нужными предложениями - задача программиста. Каждый раз при нажатии кнопки Button1 управление будет передаваться в тело процедуры, а значит, между словами BEGIN и END мы можем написать фрагмент программы, который будет выполняться в ответ на это событие.

 



Дата добавления: 2016-06-15; просмотров: 2518;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.01 сек.