Группа свойств Visual. Местоположение и размер элемента управления

Для определения местоположения и размеров визуального компонента введены два опубликованных свойства для задания координат левого верхнего угла:

Рис. 2.2. Категории свойств визуального компонента.

Для представления их в таком виде нужно отметить флажок By Category в пункте меню Arrange всплывающего меню Инспектора объектов

property Top: Integer; 

property Left: Integer;

и два опубликованных свойства для определения размеров:

property Height: Integer; 

property Width: Integer;

Значения свойств задаются в пикселах. Для определения местоположения используется система координат рабочей области владельца данного компонента. Начало отсчета находится в левом верхнем углу. Оси направлены вправо и вниз. Под рабочей областью понимается та часть площади владельца (формы, панели), которая предназначена для размещения дочерних элементов. Эти свойства можно использовать как на этапе разработки, так и во время выполнения.

Свойство

property ClientOrigin: TPoint;

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

function ClientToScreen(const Point: TPoint): TPoint;

и наоборот:

function ScreenToClient(const Point: TPoint): TPoint;

Для приведения компонента в соответствие текущим значениям указанных выше свойств используется метод

procedure AdjustSize; dynamic;

Параметры рабочей области компонента определяются следующими свойствами:

определяет высоту рабочей области в пикселах.

определяет ширину рабочей области в пикселах.

значение которого есть не что иное, как (0, 0, .clientwidth, ClientHeight). Кому-то будет удобнее пользоваться этим свойством.

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

Функция

function GetClientOrigin: TPoint; virtual;

возвращает координаты левого верхнего угла рабочей области. Функция

function GetClientRect: TRect; virtual;

возвращает размеры прямоугольника рабочей области.