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

Вниз

ControlAtPos   Найти похожие ветки 

 
serjkp   (2005-09-08 16:36) [0]

Уважаемые, подскажите как быть. есть на форме куча всяких компонентов. на панелях кнопки, на тулбарах и т.д.
требуется узнать имя компонента под курсором. использую ControlAtPos получилось только узнать имя тех которые лежат непосредственно на форме.
всем спасибо...


 
MBo ©   (2005-09-08 16:47) [1]

А не обдумал, почему так получается?
Ты ведь используешь метод ControlAtPos какого компонента?


 
serjkp   (2005-09-08 17:00) [2]

идея в голове крутится а зацепиться не могу. получается использую ControlAtPos на форме, а при переходе на компонент нужно уже на нем, но вот как этот момент реализовать не знаю.


 
TUser ©   (2005-09-08 17:07) [3]

Вызови метод ControlAtPos для того контрла, который был возвращен в первый раз. И т.д.


 
Signate ©   (2005-09-08 17:08) [4]

Я не знаю поможет или нет, но можно узнавать hwnd под курсором, а потом в цикле искать компонент с данный hwnd и что то уже делать... например узнать имя


 
Игорь Шевченко ©   (2005-09-08 17:34) [5]

FindVCLWindow


 
serjkp   (2005-09-08 18:01) [6]

пасибочки, еще получилось с FindDragTarget...


 
jack128 ©   (2005-09-08 18:11) [7]

Обычно подобные алгоритмы рекурсивно реализуются

function ControlAtPos(AControl: TWinControl; const Pos: TPoint; AllowDisabled,
 AllowWinControls: Boolean): TControl;
var
 Temp: TControl;
 TempPos: TPoint;
begin
 Result := AControl.ControlAtPos(Pos, AllowDisabled, AllowWinControls);
 if Result is TWinControl then
 begin
   TempPos.X := Pos.X - Result.Left;
   TempPos.Y := Pos.Y - Result.Top;
   Temp := ControlAtPos(TWinControl(Result), TempPos, AllowDisabled, AllowWinControls);
   if Assigned(Temp) then
     Result := Temp
 end;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.051 c
6-1117983027
-=Germe$=-
2005-06-05 18:50
2005.10.02
Как отправлять принимать сообщения(пакеты) по IPX


1-1125924627
Dr. Genius
2005-09-05 16:50
2005.10.02
Создание невиз. компонента


1-1126115085
megabax
2005-09-07 21:44
2005.10.02
Проблемы с присваиванием типа TextFile


14-1126280571
Джо
2005-09-09 19:42
2005.10.02
Забава от MS Word. Съешьте еще этих булок.


1-1125990584
Гена
2005-09-06 11:09
2005.10.02
Отключение системного меню