Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.10.25;
Скачать: [xml.tar.bz2];

Вниз

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

 
Риг   (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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.047 c
2-1251403436
LSE
2009-08-28 00:03
2009.10.25
ScanLine


2-1251702004
wah
2009-08-31 11:00
2009.10.25
XP Style и Standard


15-1250873687
Student
2009-08-21 20:54
2009.10.25
WIN32.INDUC - шо за такое?


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


15-1250890438
Германн
2009-08-22 01:33
2009.10.25
Extra-USB порты на матплате.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский