Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как узнать, что курсор мыши над иконкой в трее?


Turbid ©   (2006-03-31 22:34:00) 

У меня есть иконка в трее. Как узнать, что в данный момент курсор мыши находится над иконкой? Заранее благодарю.


Turbid   (2006-04-01 13:11:00) [1]

2sniknik

Ищите баги и издевайтесь:-)


Turbid   (2006-04-01 13:08:00) [2]

Я решил это так:

var
 CursorPos: TPoint;

procedure TMainForm.WM_ICON(var Msg: TMessage);
begin
 case Msg.LParam of
   ...
   ...
   WM_MOUSEMOVE : GetCursorPos(CursorPos)
 end;
end;

procedure TMainForm.MyProc;
var
 Point: TPoint;
begin
 GetCursorPos(Point);
 if (Point.X = CursorPos.X) and (Point.Y = CursorPos.Y) then
   ShowMessage('Cursor on Tray!!!');
end;


Delphi5.01   (2006-04-01 10:59:00) [3]

rem2
Хорошее решение :-) Молодец


rem2   (2006-04-01 10:06:00) [4]

WM_MOUSEMOVE: begin
sX:= Mouse.CursorPos.x;
sY:= Mouse.CursorPos.y;
if Timer1.Enabled then exit;
Timer1.Enabled:=true;
Caption:='Mouse YES';
AddModDelIcon(Handle,2,1,LoadIcon(0,IDI_APPLICATION),'Mouse YES')
end;
end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if (Mouse.CursorPos.x <> sX) or (Mouse.CursorPos.y <> sY) then begin
Caption:='Mouse NO';
Timer1.Enabled:=False;
AddModDelIcon(Handle,2,1,Application.Icon.Handle,'')
end;
end;
http://www.delphikingdom.info/asp/answer.asp?IDAnswer=+29588


sniknik   (2006-04-01 09:42:00) [5]

3) разобратся мог не до конца, и придумал глючную реализацию, со скрытым дефектом, которого сам не видиш, а на форуме покажут (ой покажут...;), тут хлебом не корми, дай над чужими ошибками поиздеваться ;о).


Delphi5.01   (2006-04-01 09:27:00) [6]

В таком случае всегда лудше писать ответ по двум причинам
1) Может кто-то тоже интересуеться и он не будет второй раз задавать вопрос
2) Сам как забудиш придеш суда и найдеш свой вопрос, мне самому часто помогало :-) Вот только не знаю сколько времени на этом сайте хранять инфу :-)


Turbid   (2006-04-01 02:08:00) [7]

Уже разобрался сам.


Наверх

Титульная страница Поиск, карта сайта Написать письмо