• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Dialog & System Tray

  • Автор темы iktomy
  • Дата начала
Статус
Закрыто для дальнейших ответов.
I

iktomy

Прошу помощи в следующем вопросе:
Как сделать так, что бы при завершении заполнения полей в диалоге и последующего нажатия кнопки, типа ОК!, он сворачивался в SysTray и висел там себе преспокойненько до завершения программы.
Использую Visual C++ 6 и MFC.
 
M

Mustang

а что конекретно не ясно?
- обрабатываешь нажатие на Ok.
- вешаешь иконку в систем трэй
- прячешь окно
- запускаешь процедуру обработки чего-то там... что тебе нужно
- на выходе желательно убиваешь иконку в систем трее.
- выходишь из программы.

:D

спрашивай конкретнее.
 
Y

Yura_Matsuk

Неплохой алгоритм. Но как, собственно, повесить иконку в систрей? ;)
 
M

Mustang

тада с этого надо было и начинать вопрос! ;)

Код:
#define WM_TRY_MESSAGES	WM_USER+33

NOTIFYICONDATA	m_Icm;
HICON	m_hIcon;

m_Icon=theApp.LoadIcon(IDI_TRYICON);

BOOL CYourDialog::EnableIcon(bool b_Show)
{
 BOOL bSuccess;
 m_Icm.hWnd=m_hWnd;
 m_Icm.hIcon=m_hIcon;
 m_Icm.uID=WN_TRY_MESSAGES;              //любое число! я воспользовался своей месагой.
 m_Icm.uCallbackMessage=WN_TRY_MESSAGES;

//добовляем
 if (b_Show)
 {
  m_Icm.uFlags=NIF_ICON |NIF_TIP|NIF_MESSAGE;
  strcpy(m_Icm.szTip, "твоя первая иконка в трее!");
  bSuccess = Shell_NotifyIcon(NIM_ADD, &m_Icm);
 }
//удаляем.
 else
 {
  m_Icm.uFlags=NIF_ICON|NIF_MESSAGE;
  bSuccess = Shell_NotifyIcon(NIM_DELETE, &m_Icm);
 }	
 return bSuccess;
}
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!