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

Вниз

Где находится список того, в какой очерёдности находятся   Найти похожие ветки 

 
КАСК   (2005-07-13 01:27) [0]

компоненты на форме 7 Хочется что-нибудь подудобнее чем BringToFront.


 
alex-drob   (2005-07-13 01:34) [1]

Object TreeView?


 
КАСК   (2005-07-13 01:49) [2]


> alex-drob   (13.07.05 01:34) [1]
> Object TreeView?

Что Object TreeView?


 
Юрий Зотов ©   (2005-07-13 01:49) [3]

Если все компоненты, то Components. А если контролы, то они не обязаны лежать именно на форме, но те, что лежат на форме - Controls.


 
КАСК   (2005-07-13 01:54) [4]

TImage - это контрол или компонент ?


 
Юрий Зотов ©   (2005-07-13 02:01) [5]

> КАСК   (13.07.05 01:54) [4]

TComponent и все его наследники - компоненты.

TControl и все его наследники - визуальные компоненты. На сленге - контролы.

Значит, вопрос "TImage - это контрол или компонент?" поставлен некорректно. TImage - это и компонент, и контрол одновременно.


 
Каск   (2005-07-13 02:05) [6]


> Юрий Зотов ©   (13.07.05 02:01) [5]
> > КАСК   (13.07.05 01:54) [4]
>
> TComponent и все его наследники - компоненты.
>
> TControl и все его наследники - визуальные компоненты. На
> сленге - контролы.


Ну, так как один имедж показать поверх другого, но при этом не нарушая очерёдность показа других имиджей ?


 
Defunct ©   (2005-07-13 02:09) [7]

if Image is TControl then
  ShowMessage("image is TControl);
if Image is TComponent then
  ShowMessage("image is TComponent);


 
Defunct ©   (2005-07-13 02:12) [8]

> Каск   (13.07.05 02:05) [6]
> Ну, так как один имедж показать поверх другого, но при этом не нарушая очерёдность
Глупость какая-то.

Сделайте себе массив TBitmap и рисуйте их на одном Image в том порядке, в котором вам нужно.


 
Юрий Зотов ©   (2005-07-13 02:12) [9]

> Каск   (13.07.05 02:05) [6]

Что значит "не нарушая очерёдность показа"?


 
Defunct ©   (2005-07-13 02:16) [10]

Юрий Зотов ©   (13.07.05 02:12) [9]

Вероятно, он пытается сделать показ слайдов как в Power Point. только непонятно к чему там куча Image"ей


 
Каск   (2005-07-13 03:36) [11]


> Defunct ©   (13.07.05 02:12) [8]
> Сделайте себе массив TBitmap и рисуйте их на одном Image
> в том порядке, в котором вам нужно.


Перерисовка сразу всего занимает много времени.


 
evvcom ©   (2005-07-13 08:18) [12]

Копирование уже подготовленного "за кадром" TBitmap на визуальный TImage проходит очень быстро. А вообще действительно непонятно, что тебе нужно. Объяснить нормально можешь? Тогда, глядишь, и сам себя поймешь.


 
Anatoly Podgoretsky ©   (2005-07-13 08:43) [13]

evvcom ©   (13.07.05 08:18) [12]
Объяснить нормально можешь?

Сложная задача, иначе вопроса бы не было.


 
Каск   (2005-07-14 01:28) [14]


> evvcom ©   (13.07.05 08:18) [12]
> Копирование уже подготовленного "за кадром" TBitmap на визуальный
> TImage проходит очень быстро.

Ненадо уговаривать.

Вопрос был как получить доступ к ZOrder"у ? И менять его.


 
Германн ©   (2005-07-14 01:38) [15]

2 Каск   (14.07.05 01:28) [14]
"Ненадо уговаривать." - пишется как "Не надо уговаривать."!
Научись говорить на русском языке.

>Вопрос был как получить доступ к ZOrder"у ? И менять его.
Т.е. ты хочешь получить доступ к системе!?


 
Юрий Зотов ©   (2005-07-14 02:54) [16]

> Каск   (14.07.05 01:28) [14]

TImage - неоконный контрол. У них нет Z-порядка, это просто рисунки.

Может, стоит просто описать задачу? Без терминологии, простыми русскими словами. ИМХО, так будет понятнее.


 
Экспериментатор   (2005-07-14 06:57) [17]

Порядок создания также можешь пронаблюдать посмотрев форму как текст. (DFM то бишь)


 
Каск   (2005-07-18 01:19) [18]


> Юрий Зотов ©   (14.07.05 02:54) [16]
> > Каск   (14.07.05 01:28) [14]
>
> TImage - неоконный контрол. У них нет Z-порядка


Раз есть BringToFront, то есть и ZOrder.

Допустим есть два имеджа одни над другим, как определить какой из них находится сверху ?


 
Наиль   (2005-07-18 01:43) [19]

По моему ЮЗ(13.07.05 01:49) достаточно точно ответил на этот вопрос. Так как D7 под рукой нет, то могу лишь подсказать как я дошел до выяснения этой истины. Пишешь Image1.BringToFront между любым Begin End и жмёшь на нём Ctrl+Мышь, либо Alt+ВВЕРХ. Мне нравится последний вариант. D7 выкинет тебя на реализацию BringToFront. Скорее всего ты там увидишь перестановки в массиве Components.


 
Юрий Зотов ©   (2005-07-18 01:50) [20]

> Каск   (18.07.05 01:19) [18]

> Раз есть BringToFront, то есть и ZOrder.

Так. Еще раз: TImage - неоконный контрол. У них нет Z-порядка.

Z-order - это понятие Windows. А для Windows неоконные контролы Delphi - это вообще не контролы. Более того, она о них вообще ничего не знает и даже не подозревает об их существовании. Поэтому термин "Z-order" к неоконным контролам неприменим. Можно говорить о порядке отрисовки, еще о чем-то, но только не о Z-порядке.

> есть два имеджа одни над другим, как определить какой из них
> находится сверху?

Вот Вы сами и подтвердили, что для неоконных контролов ни о каком Z-порядке речи идти не может - иначе задача решалась бы элементарным GetWindow.

Если заглянуть в исходники VCL, то увидим, что BringToFront вызывает SetZOrder, тот - SetZOrderPosition, а тот - переупорядочивает список Controls и перерисовывает контрол. Значит, с точки зрения Delphi, порядок отрисовки (но не Z-порядок) определяется порядком следования контролов в списке Controls.


 
Германн ©   (2005-07-18 02:44) [21]

До сих пор не ясно, что хочет автор сабжа. Более того - он упрямо не хочет его пояснить!



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

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

Наверх




Память: 0.51 MB
Время: 0.042 c
1-1121769741
td
2005-07-19 14:42
2005.08.07
как определить текущее время?


8-1112336983
Руслана
2005-04-01 10:29
2005.08.07
Источник записи


1-1121698763
}{eRsOn
2005-07-18 18:59
2005.08.07
RxRichEdit - частично пропадает форматирование в файле


14-1121246501
kai
2005-07-13 13:21
2005.08.07
Список предметов, которые можно/нельзя посылать почтой в Украину


1-1121749139
Big Joe
2005-07-19 08:58
2005.08.07
Помогите с *.txt файлом