-
Sirus (27.01.09 09:06) [0]Привет Мастера!
В общем суть фопроса такова: Необходимо поместить своб форму или кнопку на панель задач (типа MediaPlayer).
Кнопку или форму поместил, но проблема в том что у нее нет собственной панели на панели задач и кнопка (форма) перекрывает другие кнопки и панели.
Вот кодprocedure TForm1.Button1Click(Sender: TObject);
var h: HWND;
begin
h:=FindWindow('Shell_TrayWnd','');
windows.SetParent(Button1.Handle,h);
Button1.left:= 5;
Button1.top:= 5;
end; -
Sirus (27.01.09 11:31) [1]Еще одни грабли :(
Как только кнопка переносится на таскбар, сразу же теряется обработчик событий. -
clickmaker © (27.01.09 14:21) [2]> сразу же теряется обработчик событий
при клике сообщение WM_COMMAND шлется родительскому окну, которым, видимо, стал таскбар
а он ничего не знает про VCL-контролы -
avi9526 (29.01.09 00:41) [3]проблему с потерей сообщений можно решить (у меня работает) если к окну с кнопкой применить
> windows.SetParent(Form1.Handle,h); -
> В общем суть фопроса такова: Необходимо поместить своб форму
> или кнопку на панель задач (типа MediaPlayer).
У панели задач есть специальный API для этих целей. Он позволяет создавать плагины для панели задач, именно так MediaPlayer там и поселяется. Все подробно и с примерами расписано на MSDN В разделе про панель задач. -
Sirus (30.01.09 11:58) [5]DVM © (29.01.09 22:36) [4]
Нельзя ткнуть ссылкой, а то чет не могу найти там ничего похожего на решение моего вопроса :( -
> Sirus (30.01.09 11:58) [5]
Ищи по слову IDeskBand