Составители:
Рубрика:
17
Panell.Caption := '';
LastPos := Point(Panell.Left + X, Panell.Top + Y) ;
if LastPos.X<=0 then LastPos.X := 1;
if LastPos.X>=ClientWidth then LastPos.X := ClientWidth-1;
if LastPos.Y<=0 then LastPos.Y := 1;
if LastPos.Y>=ClientHeight then LastPos.Y := ClientHeight-1;
rO := ClientWidth/ClientHeight;
rl := LastPos.X/LastPos.Y;
r2 := LastPos.X/(ClientHeight - LastPos.Y);
with Panell do if rl < rO then if r2 < rO
then Align := alLeft else
Align := alBottom else if r2 < rO
then Align := alTop else Align := alRight;
Formi.EnableAlign;
end;
end;
2.4. Активность и видимость элементов управления
Активность элемента позволяет ему получать и обрабатывать сообщения от клавиатуры, мыши
и таймера. Она определяется свойством:
(Pb) property Enabled: Boolean;
Значение True делает управляющий элемент активным. При смене состояния Enabled выполня-
ется перерисовка его на экране, при которой пассивные элементы, как правило, изображаются серьм
цветом.
Свойство, определяющее возможность видимости элемента во время исполнения:
(Pb) property Visible: Boolean;
Во время разработки
все компоненты являются видимыми. Изменять это свойство непосредст-
венно во время выполнения можно, используя два следующих метода:
procedure Show;
procedure Hide;
Напомним, что, так как Visible является свойством, то выражение visible: =True не является
простым присваиванием. Оно неявно содержит все необходимые операции для показа элемента управ-
ления. Это же касается всех остальных свойств компонентов, реакция на
изменение которых должна
произойти немедленно.
Почему выше была применена формулировка "возможность видимости", а не "видимость"?
Чтобы элемент был виден на экране, одного значения свойства Visible недостаточно. Нужно, чтобы
видимыми были все предки элемента в иерархии. Реально видимость элемента можно узнать, пользу-
ясь свойством:
(Ro) property Showing: Boolean;
Это свойство устанавливается при изменении свойства Visible. Оно доступно
только для чте-
ния. Нужно иметь в вицу, что при изменении видимости родительского элемента Showing не изменяет-
ся и может в какой-то момент не соответствовать истинному состоянию. Обновляет состояние свойства
Showing для компонента метод:
procedure UpdateControlState;
Отрисовкой (изменением изображения на экране) элемента управления "заведуют" следующие
методы:
procedure Invalidate; Отрисовывает компонент, вызывая функцию API InvalidateRect.
procedure update; Предусматривает дополнительные
операции, необходимые Windows при отри-
совке окна. Для компонентов-окон, например, в ней вызывается функция Up-
dateWindow.
Panell.Caption := ''; LastPos := Point(Panell.Left + X, Panell.Top + Y) ; if LastPos.X<=0 then LastPos.X := 1; if LastPos.X>=ClientWidth then LastPos.X := ClientWidth-1; if LastPos.Y<=0 then LastPos.Y := 1; if LastPos.Y>=ClientHeight then LastPos.Y := ClientHeight-1; rO := ClientWidth/ClientHeight; rl := LastPos.X/LastPos.Y; r2 := LastPos.X/(ClientHeight - LastPos.Y); with Panell do if rl < rO then if r2 < rO then Align := alLeft else Align := alBottom else if r2 < rO then Align := alTop else Align := alRight; Formi.EnableAlign; end; end; 2.4. Активность и видимость элементов управления Активность элемента позволяет ему получать и обрабатывать сообщения от клавиатуры, мыши и таймера. Она определяется свойством: (Pb) property Enabled: Boolean; Значение True делает управляющий элемент активным. При смене состояния Enabled выполня- ется перерисовка его на экране, при которой пассивные элементы, как правило, изображаются серьм цветом. Свойство, определяющее возможность видимости элемента во время исполнения: (Pb) property Visible: Boolean; Во время разработки все компоненты являются видимыми. Изменять это свойство непосредст- венно во время выполнения можно, используя два следующих метода: procedure Show; procedure Hide; Напомним, что, так как Visible является свойством, то выражение visible: =True не является простым присваиванием. Оно неявно содержит все необходимые операции для показа элемента управ- ления. Это же касается всех остальных свойств компонентов, реакция на изменение которых должна произойти немедленно. Почему выше была применена формулировка "возможность видимости", а не "видимость"? Чтобы элемент был виден на экране, одного значения свойства Visible недостаточно. Нужно, чтобы видимыми были все предки элемента в иерархии. Реально видимость элемента можно узнать, пользу- ясь свойством: (Ro) property Showing: Boolean; Это свойство устанавливается при изменении свойства Visible. Оно доступно только для чте- ния. Нужно иметь в вицу, что при изменении видимости родительского элемента Showing не изменяет- ся и может в какой-то момент не соответствовать истинному состоянию. Обновляет состояние свойства Showing для компонента метод: procedure UpdateControlState; Отрисовкой (изменением изображения на экране) элемента управления "заведуют" следующие методы: procedure Invalidate; Отрисовывает компонент, вызывая функцию API InvalidateRect. procedure update; Предусматривает дополнительные операции, необходимые Windows при отри- совке окна. Для компонентов-окон, например, в ней вызывается функция Up- dateWindow. 17
Страницы
- « первая
- ‹ предыдущая
- …
- 15
- 16
- 17
- 18
- 19
- …
- следующая ›
- последняя »