Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.10.25;
Скачать: CL | DM;

Вниз

Программное позиционирование объектов.   Найти похожие ветки 

 
Риг   (2009-08-23 14:15) [0]

Как программными средствами поместить объект на передний план?

Имеется: ScrollBox, на котором изначально расположено несколько объектов.

Что происходит:
В потоке динамически создаем Label, в качестве родителя указываем наш ScrollBox.
В итоге созданный Label отображается в боксе, но перекрывается объектами, уже расположенными там.

Процедуры: SendToBack и BringToFront не меняют ситуации.

Заранее благодарю за ответ.


 
Юрий Зотов ©   (2009-08-23 14:23) [1]

Все потомки TGraphicControl (включая TLabel) - это графические контролы. То есть, просто рисунки Они не имет своей собственной канвы и рисуются непосредственно на parent"е. Как рисунки на крышке стола.

Все потомки TWinControl - это оконные контролы. То есть, полноценные окна. Они имеют свою собственную канву и рисуются поверх parent"а. Как предметы, лежащие на той же крышке стола.

Поэтому графический контрол принципиально не может оказаться поверх оконного, если имеет общий с ним parent.


 
{RASkov} ©   (2009-08-23 14:24) [2]

> Процедуры: SendToBack и BringToFront не меняют ситуации.

Все работает как нужно, только не стоит забывать о том, кто на ком может лежать, а кто нет...

> В итоге созданный Label отображается в боксе, но перекрывается
> объектами

Отсюда вопрос: Какими объектами перекрывается? Может Лабелу, как ГрафОбъекту и не суждено никогда быть выше?


 
Юрий Зотов ©   (2009-08-23 14:26) [3]

Самый простой выход из этой ситуации - создать панель размером с Label и положить ее на ScrollBox, а Label класть уже на эту панель.


 
Риг   (2009-08-23 14:42) [4]

Благодарю всех за ответы ) Теперь все понятно :)


 
Юрий Зотов ©   (2009-08-23 15:00) [5]

> Риг   (23.08.09 14:42) [4]

Если проблема только в Label, то вместо него можно просто использовать TStaticText. Тогда и панель не нужна будет.



Страницы: 1 вся ветка

Текущий архив: 2009.10.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
4-1219924369
=BuckLr=
2008-08-28 15:52
2009.10.25
Обновление ресурса версии


1-1220945342
Iris
2008-09-09 11:29
2009.10.25
настройки печати StringGrid-а


2-1251440566
kiki
2009-08-28 10:22
2009.10.25
Как сделать рандом значения от -20 до +20?


15-1250975984
Германн
2009-08-23 01:19
2009.10.25
Мини-опрос. Кому сколько ехать из дома до той конторы,


1-1220967073
stas
2008-09-09 17:31
2009.10.25
Работа с функциями GetWindowLong, SetWindowLong