Понятие Свойства и События




Каждый компонент, который помещается на форму, имеет свое отражение в окне Инспектора Объектов (рис.1). Инспектор Объектов имеет две основные закладки – Свойства и События. Создание программы в Lazarus сводится к «нанесению» компонент на форму (которая, кстати, также является компонентом) и настройке взаимодействия между ними путем:

· изменения значения свойств этих компонент;

· написания адекватных реакций на события.

Свойства

Существует несколько типов свойств, в зависимости от их «природы», т.е. внутреннего устройства:

· Простые свойства - это те, значения которых являются числами или строками. Например, свойства Left и Top принимают целые значения, определяющие положение левого верхнего угла компонента или формы. Свойства Caption и Name представляют собой строки и определяют заголовок и имя компонента или формы.

· Перечислимые свойства - это те, которые могут принимать значения из предопределенного набора (списка). Простейший пример - это свойство типа Boolean, которое может принимать значения True или False.

· Вложенные свойства - это те, которые поддерживают вложенные значения (или объекты). Инспектор Объектов изображает знак “+” слева от названия таких свойств. Имеется два вида таких свойств: множества и комбинированные значения. Инспектор Объектов изображает множества в квадратных скобках. Если множество пусто, оно отображается как []. Некоторые свойства, например, Font, для изменения своих значений имеют возможность вызвать диалоговое окно. Для этого достаточно щелкнуть маленькую кнопку с тремя точками в правой части строки Инспектора Объектов, показывающей данное свойство.

Lazarus позволяет легко манипулировать свойствами компонент как в режиме проектирования, так и в режиме выполнения программы. Все изменения значений свойств компонент в режиме выполнения должны осуществляться путем прямой записи строк кода на языке Паскаль. В режиме выполнения невозможно использовать Инспектор Объектов. Однако, доступ к свойствам компонентов довольно легко получить программным путем. Ссылка на свойство объекта осуществляется в следующем формате:

<имя объекта>.<имя свойства>

Например: My Component.Width:= 35;

Вышеприведенная строка устанавливает ширину (Width) компонента в значение 35. Если свойство Width компонента еще не было равно 35 к моменту выполнения данной строки программы, то можно увидеть, как компонент визуально изменит свою ширину.

Иногда свойство объекта является в свою очередь объектом. Тогда в обращении к этому свойству указывается через точки вся цепочка предшествующих объектов. Например, метки имеют свойство Font — шрифт, которое в свою очередь является объектом. У этого объекта имеется множество свойств, в частности, свойство Color — цвет шрифта. Чтобы сослаться на цвет шрифта метки Label1, надо написать Label1.Font.Color. Это означает: свойство Color о бъекта Font, принадлежащего объекту Label1. Например, оператор

Label1.Font.Color:=clRed

сделает надпись метки Label1 красной.

События

Список событий для объекта, на которые он реагирует, можно посмотреть в Инспекторе Объектов на странице События (см. рис.1).

Событие – это то, что происходит во время выполнения программы. Каждое событие имеет имя. Например, щелчок кнопки “мыши” – событие OnClick, создание Формы – OnCreate. Наиболее часто применяемые события представлены в таблице 1.

Для создания обработчика события программисту необходимо раскрыть список компонентов в верхней части окна Инспектора Объектов и выбрать необходимый компонент. Затем, на странице События Инспектора Объектов, нажатием левой клавиши мыши выбрать название обработчика и дважды щелкнуть по его правой (белой) части. В ответ Lazarus активизирует окно Редактора Кода модуля и покажет заготовку процедуры обработки выбранного события. Для каждого обрабатываемого события в тексте модуля организуется процедура (procedure), между ключевыми словами begin и end которой программист на языке Object Pascal записывает требуемый алгоритм обработки события.

 

Таблица 1- Часто применяемые события

 

Событие Описание события
OnActivate Возникает при активизации Формы
OnCreate Возникает при создании Формы. В обработчике данного события следует задавать действия, которые должны происходить в момент создания Формы, например установка начальных значений
OnClick Возникает при нажатии кнопки мыши в области компонента.
OnDblClick Возникает при двойном нажатии кнопки мыши в области компонента
OnKeyPress Возникает при нажатии клавиши на клавиатуре. Параметр Key имеет тип Charи содержит ASCII-код нажатой клавиши (клавиша Enter клавиатуры имеет код #13, клавиша Esc - #27 и т.д.). Обычно это событие используется в том случае, когда необходима реакция на нажатие одной из клавиш
OnKeyDown Возникает при нажатии клавиши на клавиатуре. Обработчик этого события получает информацию о нажатой клавише и состоянии клавиш Shift, Alt и Ctrl, а также о нажатой кнопке мыши

Структурные операторы

В языке Pascal имеются две реализации одной из основных алгоритмических структур – ветвления – условный оператор (if) и оператор выбора (case).

1. Условный оператор if…then…else

Условный оператор if служит для организации процесса вычислений в зависимости от какого-либо логического условия.

Оператор if может принимать две формы записи (полную и короткую):

· if <условие> then <оператор1> else <оператор2>;

· if <условие> then <оператор>;

Оператор условия if выполняется следующим образом. Сначала вычисляется выражение, записанное в условии. В результате его вычисления получается значе­ние булевского типа. В первом случае, если значение выражения есть True (истина), выполняется <оператор1>, указанный после слова then. Если результат вычисления выражения в условии есть False (ложь), то выполняется <оператор2>. Во втором случае — если результат выражения Тгuе, выполняется <оператор>, если False — выполняется оператор, следующий сразу за оператором if. По правилам каждая из ветвей может содержать либо один выполняемый оператор, либо несколько, объединенных в составной оператор. Точка с запятой перед else не ставится.

Операторы if могут быть вложенными. Формат записи:

if <условие1> then

if <условие2> then <оператор1>

else <оператор2>;

При вложениях всегда действует правило: служебное слово else всегда связывается с ближайшим по тексту служебным словом if, которое еще не связано со служебным словом else.

2. Составной оператор begin…end

Составной оператор представляет собой группу из произвольного числа опера­торов, отделенных друг от друга точкой с запятой, и ограниченную операторными скобками begin и end. Формат:

begin

<оператор 1>;

<оператор 2>;

<оператор N>;

end;

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

3. Оператор выбора case…of…end

Если один оператор if может обеспечить выбор из двух альтернатив, то оператор выбора case позволяет сделать выбор из произволь­ного числа имеющихся вариантов. Он состоит из выражения, называемого селекто­ром (selection — выбор альтернативы), и списка параметров, каждому из которых предшествует список констант выбора (список может состоять и из одной константы).

Формат:

case <выражение-селектор> of

<список1>: <оператор1>;

<список2>: <оператор2>;

<списокN>: <операторN>;

[else <оператор0>;]

end;

Здесь <выражение-селектор> - это выражение порядкового типа, в зависимости от значения которого принимается решение;

<список1>.. <списокN> - значения, с которыми сравнивается значение <селектора>;

<оператор1>,..., <операторN> - операторы (возможно составные), из которых выполняется тот, с константой которого происходит первое совпадение значения <селектора>, <оператор0> выполнится, если значение ключа не совпадает ни с одной из констант <список1>.. <списокN>.

Ветвь else не обязательна и, в отличие от оператора if, перед ней можно ставить точку с запятой. Если для нескольких значений <селектора> действия совпадают, то эти константы можно перечислить через запятую перед двоеточием или даже задать диапазон значений (нижняя граница.. верхняя граница).

Компонент TForm

Форма (объект типа TForm) является основой программы. Свойства формы определяют вид окна программы.

Основные свойства формы

Свойство Описание
Name Имя формы. В программе имя формы используется для управления формой и доступа к компонентам формы.
Caption Текст заголовка окна.
Top Расстояние от верхней границы формы до верхней границы экрана.
Left Расстояние от левой границы формы до левой границы экрана.
Width, Height Ширина, высота формы.
Icon Значок в заголовке диалогового окна, обозначающий кнопку вывода системного меню.
Color Цвет фона.
Font Шрифт. Шрифт, используемый по «умолчанию» для компонентов, находящимися на поверхности формы.
Canvas Поверхность, на которую можно вывести графику.

 



Поделиться:




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

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2022-02-04 Нарушение авторских прав и Нарушение персональных данных


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