正文

托盘(ZT)2005-08-08 18:46:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/elva6401/3620.html

分享到:

NOTIFYICONDATA m_ntyIconData; //-----------初始化---------------------------------------------------------- m_ntyIconData.cbSize = sizeof (NOTIFYICONDATA); m_ntyIconData.hWnd = this->m_hWnd; m_ntyIconData.hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); strcpy(m_ntyIconData.szTip,"这是一个任务栏测试程序"); m_ntyIconData.uFlags = NIF_TIP|NIF_MESSAGE|NIF_ICON;  //有效的成员包括Tip,msg,icon m_ntyIconData.uCallbackMessage = WM_SHOWICON;  //响应的消息 //-----在任务栏上显示---------------- ::Shell_NotifyIcon(NIM_ADD,&m_ntyIconData); //在这可以隐藏窗口了 //----------删除任务栏上的显示 ::Shell_NotifyIcon(NIM_DELETE,&m_ntyIconData); //----------------消息函数---------------- LRESULT CTestDlg::OnShowTask(WPARAM wParam,LPARAM lParam) { if (wParam!=IDR_MAINFRAME) {   return 1; } CMenu menu; POINT p; CMenu *pMenu = NULL; switch (lParam) { case WM_LBUTTONDBLCLK:  //左键双击   ShowWindow(SW_SHOW);   break; case WM_RBUTTONUP:  //右键单击   ::GetCursorPos(&p);   menu.LoadMenu(IDR_MENU1);   pMenu = menu.GetSubMenu(0);   if (pMenu!=NULL)   {    this->SetForegroundWindow();  //这条要的, 不信去掉看看会怎样    pMenu->TrackPopupMenu(TPM_LEFTALIGN,p.x,p.y,this);   }   break; default:   break; } return 0; }

阅读(15863) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册