Свойства компонент

Каждый компонент, который Вы помещаете на форму, имеет свое отражение в окне Инспектора объектов.

Создание программы в Delphi сводится к “нанесению” компонент на форму (которая также является компонентом) и настройке взаимодействия между ними путем:

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

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

Свойство является важным атрибутом компонента. Для пользователя (программиста) свойство выглядит как простое поле какой-либо структуры, содержащее некоторое значение. Однако, в отличие от “просто” поля, любое изменение значения некоторого свойства любого компонента сразу же приводит к изменению визуального представления этого компонента, поскольку свойство инкапсулирует (объединяет) в себе методы (действия), связанные с чтением и записью этого поля (которые, в свою очередь, включают в себя необходимую перерисовку). Свойства служат двум главным целям. Во-первых, они определяют внешний вид формы или компонента. А во-вторых, свойства определяют поведение формы или компонента.

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

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

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

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

Delphi позволяет легко манипулировать свойствами компонент как в режиме проектирования (Design time), так и в режиме выполнения программы (Run time).

В режиме проектирования манипулирование свойствами осуществляется с помощью мыши прямо на форме или на странице Свойства Инспектора объектов. Например, для того чтобы изменить свойства Height (высоту) и Width (ширину) кнопки, достаточно “зацепить” мышкой за любой ее угол и раздвинуть до нужного представления. Того же результата можно добиться, просто подставив новые значения свойств Height и Width в окне Инспектор объектов.

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

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

MyComponent.Width:= 35;

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

У компонента могут быть свойства, не отображаемые в окне Инспектор объектов.

Таблица 14

Описание основных свойств компонент

Название свойства Описание
Caption Связывает с компонентом некоторую строку текста, поясняющую его назначение. Чаще всего это надписи на кнопках, метках, панелях, тексты разделов меню и т.д.
Name Определяет имя компонента, которое используется в дальнейшем в программе.
Font Определяет атрибуты шрифта: высоту шрифта, его имя, атрибуты (полужирный, курсив) и т.д.
Color Задает цвет компонента или его элемента
AutoSize При свойстве AutoSize, установленном в True, автоматически изменяет размер компонента таким образом, чтобы было видно все содержащееся в нем. При свойстве AutoSize, установленном в False (по умолчанию), размеры компонента фиксированы.
Alignment Определяет выравнивание текста внутри компонента. Позволяет выравнивать текст по левому краю, правому краю или центру клиентской области компонента.
Text Позволяет прочесть или задать строку, связанную с данным управляющим элементом.
Picture Содержит отображаемый графический объект типа битовой матрицы, пиктограммы, метафайла или определенного пользователем типа.
Canvas Поверхность (холст, канва) для рисования во многих компонентах
Pen Определяет атрибуты пера, используемого для рисования линий и фигур.
Brush Определяет цвет и стиль заполнения фона окна. Доступ только для чтения.
Align Определяет способ выравнивания компонента внутри контейнера (родительского компонента).

Методы

Метод - это процедура или функция, которая определена как часть класса и инкапсулирована (содержится) в нем. Методы манипулируют полями и свойствами классов (хотя могут работать и с любыми переменными) и имеют автоматический доступ к любым полям и методам своего класса. Доступ к полям и методам других классов зависит от уровня “защищенности” этих полей и методов. Методы можно создавать как визуальными средствами, так и путем написания кода вручную.

Чтобы создать метод, реализующий адекватную реакцию объекта на событие, необходимо выделить на форме этот объект, затем перейдите на страничку События в Инспекторе объектов. Дважды щелкните по пустому полю напротив события, например, OnClick.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: