Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Работа с треем.Нужна помощь...
Форум программистов > Системное программирование > C, С++ и С Builder > MS Visual C++
Dronn
Здравствуйте всем!Помогите пожалуйста.Вот моя проблемма : свернул окно в трей...А дальше вынуть немогу.Скажите плз какой нужно эвент использовать(в MFC) или сообщение его обработчик и как им пользоватся (без MFC).Заранее спасибо!
Да и ещё.Функцию вытягивания иконки и восстановления окна я то знаю...вот кстати если кому интересно:
CODE
BOOL UnflipFromTray(HWND hWnd, BOOL bRestore)
{
//идентифицируем иконку ужо созданную
NOTIFYICONDATA nid; memset(&nid, 0, sizeof(nid)); nid.cbSize = sizeof(nid);
nid.hWnd = hWnd;
nid.uID = 1234;

// удаляемс
BOOL ok = Shell_NotifyIcon(NIM_DELETE, &nid);

if(!bRestore) return ok;

// восстанавливаем окно
ShowWindow(hWnd, SW_SHOW);
ShowWindow(hWnd, SW_RESTORE);

return ok;
}

Но незнаю, в каком эвенте её использовать если программа УЖЕ свернута.Да и ещё дополнение...Вот код сворачивания окна в трей:
CODE

BOOL FlipToTray(HWND hWnd,HICON hIcon,BOOL Minimize)
{
NOTIFYICONDATA nid; memset(&nid, 0, sizeof(nid)); nid.cbSize = sizeof(nid);
nid.hWnd = m_hWnd;
nid.uID = 1234;
nid.uCallbackMessage = WM_APP+1234;
nid.hIcon = m_hIcon;

nid.uFlags = NIF_ICON|NIF_MESSAGE|NIF_TIP;

// показываем ее
BOOL ok = Shell_NotifyIcon(NIM_ADD, &nid);

ShowWindow(SW_MINIMIZE);
ShowWindow(SW_HIDE);
}


[
Dronn
Ладно уже сам разобрался...Стоило только в главный SWITCH (MESSAGE) добавить вот это:
CODE
case WM_ShellNote:
switch((UINT)lParam)
{
case WM_RBUTTONDOWN : ShowPopupMenu(hWnd,hInst,IDC_TRAY);
}

И все стало работать!Тема закрыта.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2008 IPS, Inc.