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

Вниз

как узнать handle hint а, который появляется над ярлыком в трее?   Найти похожие ветки 

 
BillyJeans ©   (2003-06-30 09:39) [0]

как узнать handle hint"а, который появляется над моим ярлыком в трее?


 
Skier ©   (2003-06-30 10:58) [1]

Зачем ?


 
BillyJeans ©   (2003-06-30 10:59) [2]

для того, чтобы его перерисовать


 
Skier ©   (2003-06-30 11:03) [3]

Сдаётся мне что ты что-то не так делаешь.
IMHO, handle hint"а тут ни при чём...


 
BillyJeans ©   (2003-06-30 11:11) [4]

подскажешь может, что не так...
меняю я hint через NIM_MODIFY, он конечно меняется, но я хочу чтобы он менялся сразу, и мне не приходилось бы отводить мышку...
Событие, когда мышка над ярлычком я обрабатываю, вот туда я и хочу вставить перерисовку если нужно


 
Skier ©   (2003-06-30 11:14) [5]


> Событие, когда мышка над ярлычком я обрабатываю, вот туда
> я и хочу вставить перерисовку если нужно

Покажи как обрабатываешь...


 
BillyJeans ©   (2003-06-30 11:21) [6]

WM_MYICONNOTIFY
может всетаки подскажешь про handle?


 
Skier ©   (2003-06-30 11:28) [7]

>BillyJeans © (30.06.03 11:21)

> WM_MYICONNOTIFY

Не понял.


 
BillyJeans ©   (2003-06-30 11:32) [8]

procedure WMICON(var msg: TMessage); message WM_MYICONNOTIFY;
отрабатывает, если мышка над ярлычком...


 
Skier ©   (2003-06-30 11:41) [9]

>BillyJeans
Если я правильно понял, то ты хочешь поменять
текст хинта во время его отображения. Так ?


 
BillyJeans ©   (2003-06-30 11:45) [10]

ага!


 
Skier ©   (2003-06-30 11:48) [11]

>BillyJeans © (30.06.03 11:45)
Хм...Хитрый вариант.
Можно попробовать искать твой хинт через API-функции
поиска окна и перерисовывать его.


 
BillyJeans ©   (2003-06-30 11:56) [12]

не ну я согласен и repaint делать!


 
BillyJeans ©   (2003-06-30 12:12) [13]

Возвращаясь к вопросу:

> как узнать handle hint"а, который появляется над моим ярлыком
> в трее?



 
Skier ©   (2003-06-30 12:27) [14]

>BillyJeans © (30.06.03 12:12)
По кругу будем ходить ?


 
Cobalt ©   (2003-06-30 12:35) [15]

Хинт рисуешь не ты. Ты просто сообщаешь системному лотку, что задаешь такой текст для хинта, а отрисовывает он его сам.
Другое дело, что, если надо постоянно изменять этот текст, то попробуй такое:
При перемещении мышки над иконкой:
Запоминай текущую позицию курсора.
Двигай его куда-нить (скажем, в противоположную часть экрана :))
Устанавливай новый текст хинта
Возвращай его обратно.
---
возможно, лоток посчитает это за аргумент перерисовать хинт.


 
BillyJeans ©   (2003-06-30 13:10) [16]

пишу так, но hint перерисовывает не всегда :(

procedure TMainForm.ModifyTrayIcon(Name: string);
var P : TPoint;
begin
GetCursorPos(p); SetCursorPos(1, 1);

nidata.Wnd := Self.Handle;
StrPCopy(nidata.szTip, Name + #0);
nidata.uFlags := NIF_TIP;
Shell_NotifyIcon(NIM_MODIFY, @nidata);

SetCursorPos(p.x, p.y);
end;



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

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

Наверх




Память: 0.5 MB
Время: 0.018 c
14-1629
Tornado
2003-08-13 08:26
2003.09.01
форум умер


7-1687
Alish
2003-06-12 02:43
2003.09.01
Передача файлов ч/з com порт


1-1423
Viktor Kushnir
2003-08-19 08:51
2003.09.01
Ограничения при работе с статическими массивами.


3-1343
vchris
2003-08-07 08:07
2003.09.01
ADO, ODBC и dBase


14-1573
Jean
2003-08-11 17:27
2003.09.01
Ааааа...