Группа свойств 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;
Параметры рабочей области компонента определяются следующими свойствами:
- property ClientHeight: Integer;
определяет высоту рабочей области в пикселах.
- property ClientWidth: Integer;
определяет ширину рабочей области в пикселах.
- property ClientRect: TRect;
значение которого есть не что иное, как (0, 0, .clientwidth, ClientHeight). Кому-то будет удобнее пользоваться этим свойством.
Если разработчику неизвестны текущие параметры рабочей области, то он может воспользоваться следующими методами.
Функция
function GetClientOrigin: TPoint; virtual;
возвращает координаты левого верхнего угла рабочей области. Функция
function GetClientRect: TRect; virtual;
возвращает размеры прямоугольника рабочей области.