Текущий архив: 2003.03.03;
Скачать: CL | DM;
ВнизShell_NotifyIcon Найти похожие ветки
← →
Diamond Cat (2003-01-15 02:53) [0]Ситуация такая, есть иконка в трее, по нажатию на нее левой кнопкой мыши под курсором появляется форма, мне надо передать на нее управление чтобы сразу таскать по экрану
т.е. алгоритм такой
1) жму на иконку и не отпускаю кнопку мыши
2)появляется форма
3) по прежнему не отпуская кнопку мыши таскаю появившуюся форму
← →
Cobalt (2003-01-15 22:04) [1]Попробуйте после активации формы сделать её активной, т.е. передать ей фокус.
← →
Cobalt (2003-01-15 22:05) [2]Да, и "вручную" сообщить ей о нажатии мышки
← →
Diamond Cat (2003-01-15 23:58) [3]пытался
if (message.msg=wm_user) and (message.lParam=wm_lbuttondown)then
begin
form1.left:=pt.x-7;
form1.Top:=pt.y-53;
visible:=true;
form1.SetFocus;
sendmessage(handle,wm_lbuttondown,MK_LBUTTON ,makelparam(7,53));
end;
но нифига ктомуже программа становится в режим занятости
← →
Cobalt (2003-01-16 00:48) [4]Кажись, ты запутался :)
Попробуй написать последовательность действий - что происходит с твоим окном, и окном Shell_NotifyIcon.
Типа:
SNI Моё
мышь нажата показывается
фокус умирает получает фокус
мышь отжата (искуст-но) мышь нажата (искуст-но)
И т.п.
И эмулируешь это (не забывай про хелп по сообениям (или, лучше пользоваться соответсвующими функциями SetFocus))
← →
Diamond Cat (2003-01-17 00:57) [5]спасибо конечно за совет, но он полностью пустой :о(
проблема в том что после нажатия на иконку (и если не отпускать кнопку мыши) и появления формы, wndproc ( а именно его я перекрываю для получения сообщений от иконки) получает лишь wm_nchittest, при этом изменения result-а этого сообщения по типу
if Message.Result = htClient then
Message.Result := htCaption;
не производят никакого эффекта, правда срабатывает
setwindowpos(handle,hwnd_top,message.lParamlo-30,message.LParamhi-30,0,0,SWP_NOSIZE); от wm_nchittest, при этом ведет себя довольно странно (притормаживает перемещение) при нажатой кнопке мыши
какие еше предложения?
Страницы: 1 вся ветка
Текущий архив: 2003.03.03;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.007 c