tianxian_1019 2019-10-16 13:47 采纳率: 25%
浏览 207
已采纳

关于DUILIB函数跳转问题

代码实现的功能:托盘图片右键弹出MessageBox
加载托盘图标:

    memset(&m_trayIcon, 0, sizeof(NOTIFYICONDATA));
    m_trayIcon.cbSize = sizeof(NOTIFYICONDATA);
    m_trayIcon.hIcon = ::LoadIcon(GetModuleHandle(NULL), MAKEINTRESOURCE(IDI_LOGO));
    m_trayIcon.hWnd = m_hWnd;
    lstrcpy(m_trayIcon.szTip, _T("tecare"));
    m_trayIcon.uCallbackMessage = WM_USER;
    m_trayIcon.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;
    Shell_NotifyIcon(NIM_ADD, &m_trayIcon);
    ShowWindow(SW_HIDE);

其中返回的是WM_USER;
右键弹出对话框代码如下:

LRESULT ViewForm::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam,POINT point)
{
    LRESULT lRes = 0;
    BOOL bHandled = TRUE;
    switch (uMsg)
    {
    case WM_USER:   
        MessageBox(NULL, _T("hello"), _T("界面"), NULL);
    break;
    default:                
        bHandled = FALSE; break;
    }

    if (bHandled) return lRes;

    return Window::HandleMessage(uMsg, wParam, lParam);
}

运行结果为:托盘图标右键能显示出来,但是右键的时候messagebox没有弹出来!!!,加断点的时候 HandleMessage函数没有执行。该如何解决

  • 写回答

1条回答 默认 最新

  • 关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何解决ldsc的这条报错/index error
  • ¥15 VS2022+WDK驱动开发环境
  • ¥30 关于#java#的问题,请各位专家解答!
  • ¥30 vue+element根据数据循环生成多个table,如何实现最后一列 平均分合并
  • ¥20 pcf8563时钟芯片不启振
  • ¥20 pip2.40更新pip2.43时报错
  • ¥15 换yum源但仍然用不了httpd
  • ¥50 C# 使用DEVMOD设置打印机首选项
  • ¥15 麒麟V10 arm安装gdal
  • ¥20 OPENVPN连接问题