· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.WIN32 —› Замена explorer.exe

<< . 1 . 2 .

Посл.отвђт Сообщенiе


Дата: Сен 4, 2004 00:45:40

Дело shell32 - отправить твоему окну сообщение.
Сообщение в вин2к - 0x4A, посылается через SendMessageTimeout.
Для начала попробуй его отловить.


Дата: Сен 4, 2004 00:49:01

Это WM_COPYDATA,
wParam
Handle to the window passing the data
lParam
Pointer to a COPYDATASTRUCT structure that contains the data to be passed


Дата: Сен 4, 2004 00:51:11

И хорошо бы, если ты сам проверишь, так ли это работает на твоей системе.


Дата: Сен 4, 2004 10:26:54

_Juicy
„На первый взгляд похоже, что иконки рисуются в окне
по имени "Shell_TrayWnd"(win2k), “

Если взгляд вооружить утилитой spy++ из VisualStuio,
то увидим что "Shell_TrayWnd" - это вся пусковая панель, а собственно трей - TrayNotifyWnd, в котором еще два элемента : часики - TrayClockWClass и иконки : ToolbarWindow32.


Дата: Сен 5, 2004 16:32:52

И как этот факт поможет нам создать собственную панель,
если сообщения посылаются Shell_TrayWnd?


Дата: Сен 7, 2004 13:54:32 · Поправил: valterg

„И как этот факт поможет нам создать собственную панель,
если сообщения посылаются Shell_TrayWnd?“


Не знаю про какие сообщения ты говоришь, но клик мыши обрабатывает TrayNotifyWnd и во всех описаниях работы с Треем говорится именно про TrayNotifyWnd.
Т.е. тебе в окне Shell_TrayWnd надо создать "подокно"
TrayNotifyWnd и для него обработчик его сообщений.
++++++++++++++++++++++++++
Кстати, бросай эту тему и создай новую :
Как сделать собственный трей. Тогда получишь более квалифицированный ответ.


Дата: Сен 7, 2004 20:33:26

Тут дело не в клике мыши, а в том, как трей узнает, что приложение свернулось.
Приложение делает это при помощи shell32!Shell_NotifyIcon.
А теперь возьми отладчик и посмотри, что там происходит.


Дата: Сен 7, 2004 21:01:48

Gloomy
Хех.. У меня такой же десктоп.. :) Только в центре логотип Heckler & Koch, а схема цветовая вся черная. Зато никаких иконок и в пуске только автозагрузка (не удаляется, тварь). А так все батниками сделано.. :)


Дата: Сен 8, 2004 10:40:21 · Поправил: valterg

„Тут дело не в клике мыши, а в том, как трей узнает, что приложение свернулось.
Приложение делает это при помощи shell32!Shell_NotifyIcon.
А теперь возьми отладчик и посмотри, что там происходит.“

Пардон за левые измышления, вот тут вроде проясняется.
http://ogoncharenko.narod.ru/DelphiMain/DelphiFaq/83.htm
Т.е. ты сам должен перехватывать и обрабатывать сообщение Shell_NotifyIcon. Иконы ты можешь делать как хочешь, но если нужно адекватное поведение, то в ссылке вроде раз"ясняется что надо делать.

<< . 1 . 2 .


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.061