Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.01.2013, 01:26   #1
remont_it,
Пользователь
 
Регистрация: 13.11.2011
Сообщений: 30
По умолчанию Вопрос по System Tray)

Как сделать что бы при нажатии на кнопку программа сворачивается в System Tray? А при нажатии на иконку в System Tray окно восстанавливалось) Подскажите плиз) Программа пишется на C++ Builder 6 или C++ Builder Xe2
Serega
remont_it, вне форума Ответить с цитированием
Старый 19.01.2013, 08:39   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Читайте про функцию Shell_NotifyIcon() и NOTIFYICONDATA структуру
waleri вне форума Ответить с цитированием
Старый 19.01.2013, 11:07   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
на C++ Builder 6 или C++ Builder Xe2
В первом придется использовать сторонние компоненты или совет Валеры.
Во втором уже должен быть компонент TTrayIcon, который решит твою задачу. Определяйся.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.01.2013, 11:23   #4
remont_it,
Пользователь
 
Регистрация: 13.11.2011
Сообщений: 30
По умолчанию

Вот скирин программы на C++ Builder Xe2 и мне нудно добавить код для сворачивания ее в System Tray и обратно. Код нужно добавить в кнопку "Отмена" Помогите))
Изображения
Тип файла: jpg Безымянный.jpg (105.4 Кб, 129 просмотров)
Вложения
Тип файла: rar Cleaner.rar (2.70 Мб, 8 просмотров)
Serega
remont_it, вне форума Ответить с цитированием
Старый 19.01.2013, 11:47   #5
alik7777777
Новичок
Джуниор
 
Регистрация: 18.01.2013
Сообщений: 5
По умолчанию

установи прогу anvir menedger(свернуть- в трей,иконку,поверх окон),во всех окнах програм и проводников появятся кнопки и твори что хошь
alik7777777 вне форума Ответить с цитированием
Старый 19.01.2013, 11:49   #6
remont_it,
Пользователь
 
Регистрация: 13.11.2011
Сообщений: 30
По умолчанию

Мне нужно делать это программно, (той программой которой я буду работать)
Serega
remont_it, вне форума Ответить с цитированием
Старый 19.01.2013, 12:11   #7
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Код:
extern HINSTANCE g_hinst;
LRESULT IconDrawItem(LPDRAWITEMSTRUCT lpdi);

bool __fastcall TFormPrimary::TrayMessage(DWORD dwMessage)
{
   NOTIFYICONDATA tnd;
   PSTR pszTip;

   pszTip = "Гирлянды";// Всплывающая подсказка над иконкой

   tnd.cbSize          = sizeof(NOTIFYICONDATA);
   tnd.hWnd            = Handle;
   tnd.uID             = IDC_MYICON;
   tnd.uFlags          = NIF_MESSAGE | NIF_ICON | NIF_TIP;
   tnd.uCallbackMessage	= MYWM_NOTIFY;

   if (dwMessage == NIM_MODIFY)
    {
        tnd.hIcon  = Image2->Picture->Icon->Handle;
        if (pszTip)
           lstrcpyn(tnd.szTip, pszTip, sizeof(tnd.szTip));
	    else
        tnd.szTip[0] = '\0';
    }
   else
    {
        tnd.hIcon = NULL;
        tnd.szTip[0] = '\0';
    }
   return (Shell_NotifyIcon(dwMessage, &tnd));
}
//---------------------------------------------------------------------------

LRESULT IconDrawItem(LPDRAWITEMSTRUCT lpdi)
{
	HICON hIcon;

	hIcon = (HICON)LoadImage(g_hinst, MAKEINTRESOURCE(lpdi->CtlID), IMAGE_ICON,
		16, 16, 0);
	if (!hIcon)
		return(FALSE);

	DrawIconEx(lpdi->hDC, lpdi->rcItem.left, lpdi->rcItem.top, hIcon,
		16, 16, 0, NULL, DI_NORMAL);

	return(TRUE);
}
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder

Последний раз редактировалось Smitt&Wesson; 19.01.2013 в 12:15.
Smitt&Wesson вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка Ambiguity between '_fastcall System::operator +(int,const System::Variant &)' and '_fastcall System::opera Jawner C++ Builder 1 12.04.2012 09:58
System Tray xRamzeSx Общие вопросы Delphi 9 19.09.2010 14:47
System Tray - как показать форму поверх программы Opera SoftKoc Общие вопросы Delphi 8 02.01.2010 03:25
Программное добавление программы в System Tray .Phoenix Общие вопросы Delphi 5 30.09.2009 11:42
Как определить координаты иконки приложения в system tray? SkAndrew Общие вопросы Delphi 5 18.08.2008 16:52