如何给控件添加默认没有的消息响应函数

zhangwuji154 2009-12-28 10:19:54
比如给list control控件添加一个右键弹起消息,这个怎么加
...全文
149 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
chun4221 2012-02-27
  • 打赏
  • 举报
回复
你们的方法不行嘛
lizhigang34 2009-12-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zhangwuji154 的回复:]
默认根本没有ON_WM_RBUTTONUP()
[/Quote]
再往下拉,会发现NM_RCLICK,指示用户已在控件内单击了鼠标右键
似水流年__ 2009-12-28
  • 打赏
  • 举报
回复
路过,帮顶,每天回帖即可获得10分可用分!
mmilmf 2009-12-28
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zhangwuji154 的回复:]
引用 2 楼 mmilmf 的回复:
通过ClassWizard添加,找到这个控件的ID号之后,会在右边的Messages:下列出该控件的消息
点击Add Function按钮,Edit Code就行啦

大哥,我很无语……………………………………
如果能直接这样加的话,我还用问吗
[/Quote]

我也很无语啊,你怎么不说清呢,一般不都是这样添加吗,
listCtrl没有,特殊啊...
giada 2009-12-28
  • 打赏
  • 举报
回复
看看看不懂
Jenf_Mu 2009-12-28
  • 打赏
  • 举报
回复
用户在控件上单击鼠标右键,应如何做出反应?

答:重写PreTranslateMessage,代码示例:
BOOL CCDialogDlg::PreTranslateMessage(MSG* pMsg)
{
if(WM_RBUTTONDOWN == pMsg->message)
if(pMsg->hwnd == GetDlgItem(IDC_BUTTON1)->GetSafeHwnd())
AfxMessageBox("右键点击Button1");
return CDialog::PreTranslateMessage(pMsg);
}
Ryanwen 2009-12-28
  • 打赏
  • 举报
回复
翻翻MSDN,这些例子就很容易找到 ......


ON_NOTIFY(NM_RCLICK, IDC_XXX_LISTCTRL, OnRclickList)

void CXXDlg::OnRclickList(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
CMenu nMenu;
nMenu.LoadMenu(IDR_LIST_MENU); //载入菜单
CMenu *pRBMenu = nMenu.GetSubMenu(0);

CPoint pos;
GetCursorPos( &pos ); //获得鼠标位置
pRBMenu->TrackPopupMenu( TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_RIGHTBUTTON,
pos.x, pos.y, this);

*pResult = 0;
}
zhangwuji154 2009-12-28
  • 打赏
  • 举报
回复

默认根本没有ON_WM_RBUTTONUP()
zhangwuji154 2009-12-28
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 mmilmf 的回复:]
通过ClassWizard添加,找到这个控件的ID号之后,会在右边的Messages:下列出该控件的消息
点击Add Function按钮,Edit Code就行啦
[/Quote]
大哥,我很无语……………………………………
如果能直接这样加的话,我还用问吗
mmilmf 2009-12-28
  • 打赏
  • 举报
回复
通过ClassWizard添加,找到这个控件的ID号之后,会在右边的Messages:下列出该控件的消息
点击Add Function按钮,Edit Code就行啦
Ryanwen 2009-12-28
  • 打赏
  • 举报
回复
响应NM_RCLICK通告,TrackPopupMenu弹出菜单

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧