首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

mfc托盘图标右击疏失

2013-04-22 
mfc托盘图标右击出错LRESULT CAudioProDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam){//

mfc托盘图标右击出错
mfc托盘图标右击疏失

LRESULT CAudioProDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
// TODO: 在此添加专用代码和/或调用基类
//托盘图标
switch(message)
{
case MYWM_NOTIFYICON:
  if (lParam == WM_LBUTTONDOWN)
{
//单击左键响应
if (isShow)
{
AfxGetApp()->m_pMainWnd->ShowWindow(SW_HIDE);
isShow = false;

else
{
AfxGetApp()->m_pMainWnd->ShowWindow(SW_SHOW);
isShow = true;
}
}

if (lParam == WM_RBUTTONDOWN)//右击托盘菜单
{
//单击右键响应
CMenu menu;
menu.LoadMenu(IDR_MAINMENU);
CMenu* pMenu = menu.GetSubMenu(1);
CPoint pos;
GetCursorPos(&pos);
SetForegroundWindow();
pMenu->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON,pos.x,pos.y,AfxGetMainWnd());
//PostMessage(WM_NULL,0,0);
  }
break;
default:
break;
}
return CDialog::WindowProc(message, wParam, lParam);
}

[解决办法]
怎么发了2帖啊?

你先自己断点下,出错位置。不然很难定位

下面是个成功的例子


LONG OnNotifyIcon(WPARAM wParam, LPARAM lParam);//定义函数响应鼠标右键单击
ON_MESSAGE(WM_NOTIFYICON, OnNotifyIcon)//手工添加消息映射 WM_NOTIFYICON为创建托盘时用到的宏#define WM_NOTIFYICON WM_USER+5
IconData.cbSize = sizeof (NOTIFYICONDATA);
IconData.hWnd = m_hWnd;
IconData.uID = IDR_MAINFRAME;
IconData.uFlags = NIF_ICON
[解决办法]
NIF_MESSAGE
[解决办法]
NIF_TIP;
IconData.uCallbackMessage = WM_NOTIFYICON;
IconData.hIcon = m_hIcon;
strcpy(IconData.szTip,"托盘信息");
Shell_NotifyIcon(NIM_ADD,&IconData);
LONG CStockIconDlg::OnNotifyIcon(WPARAM wParam, LPARAM lParam)
{
switch ( lParam )// The backdrop icon sent us a message. Let's see what it is
{
case WM_RBUTTONDOWN:
   {// 用户在托盘图标上单击鼠标右键,弹出菜单
    CMenu pMenu;
    if (pMenu.LoadMenu(IDR_MENU1))        
    {
     CMenu* pPopup = pMenu.GetSubMenu(0);
     ASSERT(pPopup != NULL);
     CPoint Point;
     GetCursorPos( &Point );
     SetForegroundWindow();
     pPopup->TrackPopupMenu(
      TPM_LEFTALIGN 
[解决办法]
 TPM_RIGHTBUTTON,
      Point.x, Point.y, this); 
    }
   }
   break;
case WM_LBUTTONDBLCLK:
case WM_LBUTTONDOWN:
   break;
}


[解决办法]
参考: 给托盘添加右击菜单--变化的背景图
http://www.vckbase.com/index.php/cv/481

热点排行