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

Вниз

Вопрос - Как узнать что TPanel.BringtoFront=True?   Найти похожие ветки 

 
vegarulez ©   (2007-12-05 18:30) [0]

Прив мастерам!
Сабж.


 
Kolan ©   (2007-12-05 18:49) [1]

BringtoFront не может быть True, так как это метод, а не свойство.


 
Palladin ©   (2007-12-05 19:03) [2]

по ZOrder


 
vegarulez ©   (2007-12-05 19:56) [3]

Kolan ©   (05.12.07 18:49) [1]
я в курсе...
я имею ввиду, как определить, что из всех других TPanel`ов этот Bringtofront, а остальные под ним расположены...
как это определить?


 
boa_kaa ©   (2007-12-05 20:30) [4]


> vegarulez ©   (05.12.07 19:56) [3]

Тебе в 2 русским по белому написали


 
vegarulez ©   (2007-12-06 07:18) [5]

Palladin ©   (05.12.07 19:03) [2]

А это как?

boa_kaa ©   (05.12.07 20:30) [4]

я не понял... поясни...


 
ЮЮ ©   (2007-12-06 10:20) [6]

> что из всех других TPanel`ов этот Bringtofront, а остальные
> под ним расположены...


Выполнить BringtoFront и добиться желаемого.


 
{RASkov} ©   (2007-12-06 12:25) [7]

> [5] vegarulez ©   (06.12.07 07:18)

На вот попробуй это:
function ConrtrolIsFront(Ctrl: TControl; AParent: TWinControl; IgnoreOther: Boolean=False): Boolean;
var N: Integer;
begin
 if not IgnoreOther then Result:=AParent.Controls[AParent.ControlCount-1]=Ctrl
  else for N:=AParent.ControlCount-1 downto 0 do
   if AParent.Controls[N] is Ctrl.ClassType then begin
    Result:=AParent.Controls[N]=Ctrl;
    Break;
  end;
end;

Я в англицком не силен, поэтому названия могут не соответствовать и поэтому вот расшифровка:
Ctrl - проверяемый контрол
AParent - проверять на этом родителе
IgnoreOther - участвуют ли в проверки другие контролы, т.е. если выше самого верхнего контрола класса проверяемого, лежит контрол другого класса.... в общем думаю понятно:)
Может есть и стандартный какой-то способ, но я бегло пробегся по TControl.. заметил только SetZOrder...


 
{RASkov} ©   (2007-12-06 12:59) [8]

Вот так, вроде бы, более правильнее и красивее:
function IsFrontControl(Ctrl: TControl; AParent: TWinControl; const IgnoreOther: Boolean=False): Boolean;
var N: Integer;
begin
 with AParent do begin
  Result:=Controls[ControlCount-1]=Ctrl;
  if not IgnoreOther or Result then Exit;
  for N:=ControlCount-1 downto 0 do
   if Controls[N] is Ctrl.ClassType then begin
    Result:=Controls[N]=Ctrl;
    Break;
   end;
 end;
end;


 
vegarulez ©   (2007-12-06 15:48) [9]

А как быть если он -TPanel, дважды вложен в другие TPanel`ы?


 
vegarulez ©   (2007-12-06 15:51) [10]

т.е.
TPanel1--->TPanel2--->Tpanel3
Вот Tpanel3 как раз и требуется отследить.... потому как в TPanel2 содержится несколько TPanel`ов типа Tpanel3...


 
{RASkov} ©   (2007-12-06 23:43) [11]

> [9, 10] vegarulez ©   (06.12.07 15:48)

if IsFrontControl(panel3, Panel2) then ShowMsg("Панэл3 первая на панели2:")


 
{RASkov} ©   (2007-12-06 23:45) [12]

> первая

*тобишь верхняя (оно же - топмост, BringtoFront=True)



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

Форум: "Начинающим";
Текущий архив: 2007.12.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.007 c
6-1176735518
Dmitry_177
2007-04-16 18:58
2007.12.30
Остановить выполнение accept или recv


15-1196281112
ANTPro
2007-11-28 23:18
2007.12.30
HP dv9000


2-1196779438
dmdel
2007-12-04 17:43
2007.12.30
Просмотр в Fb 1.5


6-1176305583
ALnEtNoInA
2007-04-11 19:33
2007.12.30
Написать простейший прокси-сервер (https) средствами Indy


6-1176202407
Khabibulin
2007-04-10 14:53
2007.12.30
Как залогиниться у удаленного компьютера по локальной сети?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский