Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 17.04.2008, 09:09   #1
prizrak1390
-=PriZraK=-
Форумчанин
 
Аватар для prizrak1390
 
Регистрация: 12.12.2007
Сообщений: 399
Стрелка Имя компонента...

Доброе время суток.
Подскажите пожалуйста, как узнать над каким компонентом(например Button или Edit) находится курсор мыши...и при этом не используя событие OnMouseMove??
prizrak1390 вне форума
Старый 17.04.2008, 09:42   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Например так:
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
var t:TWinControl;
begin
t:=FindVCLWindow(Mouse.CursorPos);
if t<> nil then caption:=t.ClassName;
end;
Если конечно этот компонент VCLный.

А чем собсно OnMouseMove не устроило?
I'm learning to live...
Stilet вне форума
Старый 17.04.2008, 10:16   #3
prizrak1390
-=PriZraK=-
Форумчанин
 
Аватар для prizrak1390
 
Регистрация: 12.12.2007
Сообщений: 399
По умолчанию

ToStilet
Просто мне нужно узнать имя динамически созданного компонента.
prizrak1390 вне форума
Старый 17.04.2008, 10:21   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну так что мешает накрутить этому компоненту OnMouseEnter ?
I'm learning to live...
Stilet вне форума
Старый 17.04.2008, 10:41   #5
prizrak1390
-=PriZraK=-
Форумчанин
 
Аватар для prizrak1390
 
Регистрация: 12.12.2007
Сообщений: 399
По умолчанию

Так удобнее в том плане, что в нужный момент я могу отключить таймер
prizrak1390 вне форума
Старый 17.04.2008, 11:47   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Спорить не буду но не согласен.
I'm learning to live...
Stilet вне форума
Старый 17.04.2008, 12:09   #7
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
Просто мне нужно узнать имя динамически созданного компонента
А почему сразу, в процессе создания, не назначить имя? И обращаться к нему будет удобно... По имени...
mihali4 вне форума
Старый 17.04.2008, 14:13   #8
prizrak1390
-=PriZraK=-
Форумчанин
 
Аватар для prizrak1390
 
Регистрация: 12.12.2007
Сообщений: 399
По умолчанию

toStilet
Я понимаю, что можно и по другому. Но Ваш вариант с таймером мне больше всего подходит
toMihali4
Ну потому, что создаётся огромное количество компонентов и мне пришлось бы работать с массивами что-бы всех запомнить и корректно обратиться...Но вариант с таймером исключает такую необходимость.
prizrak1390 вне форума
Старый 17.04.2008, 14:22   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
и мне пришлось бы работать с массивами что-бы всех запомнить и корректно обратиться
Ничего подобного делать не обязательно. Если задавать будеш имя в котором будет присутствовать счетчик, то никаких массивов не нужно.
I'm learning to live...
Stilet вне форума
Старый 17.04.2008, 14:22   #10
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Код:
procedure TForm1.Timer1Timer(Sender: TObject);
var
  p: TPoint;
  c: TControl;
begin
  GetCursorPos(p);
  p := ScreenToClient(p);
  c := ControlAtPos(p,false,true);
  caption := inttostr(p.x)+', '+ inttostr(p.y)+' - ';
  if c<> nil then caption := caption + c.Name;
end;
pu4koff вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установка компонента xakkkkker Компоненты Delphi 3 01.04.2008 08:50
Прозрачность компонента JoanM Общие вопросы Delphi 14 16.02.2008 15:40
Нужны два компонента delphin100 Компоненты Delphi 2 13.01.2008 01:54
Регистрация компонента Zonder Компоненты Delphi 0 06.12.2006 18:17