|
- int CIMOPDlg::OnCreate()
- {
- // if (CDialog::OnCreate(lpCreateStruct) == -1)
- // return -1;
- m_tnid.cbSize = sizeof(NOTIFYICONDATA);
- m_tnid.hWnd = this->m_hWnd;
- m_tnid.uFlags = NIF_MESSAGE|NIF_ICON|NIF_TIP;
- m_tnid.uCallbackMessage = MYWM_NOTIFYICON; //用户自定义回调消息
- CString szTooltip;
- szTooltip = _T("");
- _tcscpy(m_tnid.szTip,szTooltip);
- m_tnid.uID = IDR_MAINFRAME; //托盘图标
- HICON hicon;
- hicon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
- m_tnid.hIcon = hicon;
- ::Shell_NotifyIcon(NIM_ADD,&m_tnid);
- // if(hicon)::DestroyIcon(hicon);
- return 0;
- } //创建托盘
- LRESULT CIMOPDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
- {
- switch(message)
- {
- case MYWM_NOTIFYICON: //自定义消息
- if(lParam == WM_LBUTTONDBLCLK)
- {
- AfxGetApp()->m_pMainWnd->ShowWindow(SW_SHOW);
- }
- else if(lParam == WM_RBUTTONDOWN)
- {
- CMenu menu;
- menu.LoadMenu(IDR_MENU1);
- CMenu *pMenu = menu.GetSubMenu(0);
- CPoint point;
- GetCursorPos(&point);
- pMenu->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON,point.x,point.y,AfxGetMainWnd());
- }
- break;
- case WM_SYSCOMMAND: //系统消息
- if(wParam == SC_MINIMIZE)
- {
- AfxGetApp()->m_pMainWnd->ShowWindow(SW_HIDE);
- return 0;
- }
- break;
- }
- return CDialog::WindowProc(message, wParam, lParam);
- } //相应托盘消息
复制代码 |
|