Главная страница
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.016 c
1-1221634382
Sashka
2008-09-17 10:53
2009.10.25
Последовательность идентификации и устранения ошибки


15-1250752659
Павел Калугин
2009-08-20 11:17
2009.10.25
Методика тестирования програмного обеспечения


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


1-1220066174
Xandr001
2008-08-30 07:16
2009.10.25
Refresh в браузере


15-1251484515
DVM
2009-08-28 22:35
2009.10.25
В Delphi 7 d Windows.pas ошибка что ли в RegEnumValueW?