给托盘添加右击菜单--变化的背景图

http://tech.ddvip.com   2006年07月20日    社区交流

本文详细介绍给托盘添加右击菜单--变化的背景图

  本文示例源代码或素材下载

  图1 变化的背景图

  给托盘添加右击菜单

  一般的商业程序都有托盘图标和在托盘上弹出右击菜单的功能,那么如何给自已的程序添加这样的功能呢?本文通过改变背景图的实例,介绍一种实现托盘上弹出右击菜单的方法。 

一、添加托盘图标

  给程序添加托盘图标的方法在很多VC书中都有实例,通常在程序中按下面的步骤就可以实现:

  1、在XXDlg.CPP文件头部加入

#define WM_NOTIFYICONWM_USER+5  
NOTIFYICONDATA nd;

  2、在程序的初始化中加入下面代码

nd.cbSize= sizeof (NOTIFYICONDATA);
nd.hWnd= m_hWnd;
nd.uID= IDR_MAINFRAME;
nd.uFlags= NIF_ICON|NIF_MESSAGE|NIF_TIP;
nd.uCallbackMessage= WM_NOTIFYICON;
nd.hIcon= m_hIcon;
strcpy(nd.szTip, "我的托盘");
Shell_NotifyIcon(NIM_ADD, &nd);   

  3、在程序的退了函数中加入删除托盘图标语句 

Shell_NotifyIcon(NIM_DELETE, &nd); 

  二、在资源中添加菜单

  1、建立菜单 

  图2 菜单

  2、建立菜单对应的函数

  void CbackdropDlg::OnShow()
{
  ShowWindow( SW_SHOWNORMAL);//恢复正常显示
}
void CbackdropDlg::OnExit()
{
  ::PostQuitMessage(0); //退出
}
void CbackdropDlg::OnHide()
{
  ShowWindow(SW_HIDE);//隐藏
}
void CbackdropDlg::OnMin()
{
  ShowWindow(SW_SHOWMINIMIZED);//最小化
}

  三、添加响应函数 

作者:张庆利    责编:豆豆技术应用

正在加载评论...