zifeng19951010
zifeng19951010
采纳率100%
2015-09-11 01:59

MFC中静态文本框获取鼠标移动到按钮上的消息

5

MFC对话框运用程序,对话框上有多个按钮和静态文本框,鼠标移动到不同按钮上时静态文本框输出不同字符串,这个功能怎么实现?我刚学MFC,是个小白,希望各位大神不嫌麻烦,讲详细一点。谢谢!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • glc22 宇文仲竹 6年前

    1.重载PreTranslateMessage函数
    2.实现如下代码
    BOOL CMouseDlg::PreTranslateMessage(MSG* pMsg)
    {
    // TODO: Add your specialized code here and/or call the base class
    if(pMsg->hwnd == GetDlgItem(IDC_BUTTON1)->GetSafeHwnd() && pMsg->message == WM_MOUSEMOVE)
    {
    CString windowText;
    GetDlgItem(IDC_BUTTON1)->GetWindowText(windowText); //得到按钮文本
    GetDlgItem(IDC_STATIC1)->SetWindowText(windowText); //显示到静态文本框
    }else if(pMsg->hwnd == GetDlgItem(IDC_BUTTON2)->GetSafeHwnd() && pMsg->message == WM_MOUSEMOVE)
    {
    CString windowText;
    GetDlgItem(IDC_BUTTON2)->GetWindowText(windowText);
    GetDlgItem(IDC_STATIC1)->SetWindowText(windowText);
    }
    return CDialog::PreTranslateMessage(pMsg);
    }

    点赞 1 评论 复制链接分享
  • testcs_dn 微wx笑 6年前
    点赞 评论 复制链接分享
  • chenggongdeziji chenggongdezijihehe 6年前

    你的意思是输出不同的文字还是?

    点赞 评论 复制链接分享
  • chenggongdeziji chenggongdezijihehe 6年前

    你的意思是输出不同的文字还是?

    点赞 评论 复制链接分享