Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
2-1251176475
id_984fa940
2009-08-25 09:01
2009.10.25
Проблема с очисткой компонента типа TValueListEditor


11-1206746346
kns
2008-03-29 02:19
2009.10.25
findcomponent


2-1251978697
Nilman
2009-09-03 15:51
2009.10.25
поменять внешний вид TComboBox


8-1198524383
XeON
2007-12-24 22:26
2009.10.25
Вырезать часть картинки


1-1221741558
kaif
2008-09-18 16:39
2009.10.25
Кодировка в ресурсах EXE-файла для EventLog




   Наверх