初学VC,遇难,高手请指点一下,谢谢了!!!

color918 2002-04-10 09:23:49
我在工具栏上添加了几个按钮,然后再classwizard 中添加工具栏的buttonclick事件
处理函数,可是我不管点击工具栏上的哪个按钮,都会调用这个处理函数,小弟想知道
我如何在这个处理函数中判断是点了哪个按钮呢?难道还要为每个按钮单独编一个消息处理函数么?请高手赐教,谢谢了!!!!!下面是点击每个按钮后都进入的处理函数。
void CV2Dlg::OnButtonClickToolbar1(LPDISPATCH Button)
{
// TODO: Add your control notification handler code here
}
...全文
10 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
twtpdc 2002-04-11
添加PreTranslateMessage(MSG* pMsg),在其中判断,试试吧!
回复
color918 2002-04-10
高手请注意,Button是属于ToolBar控件的,是在ToolBar控件属性设置中增加的了,它不是一个单独的Button控件,没有ID号的阿.
ToolBar可以响应两个事件,ButtonClick和Click,我增加了ButtonClick的处理函数,于是不管点击ToolBar上的哪个Button都进入到我的处理函数,我的意思是在这个函数中怎样判断是点了哪个Button。

请继续赐教!!!!
回复
happyangelclc 2002-04-10
那个是处理toolbar的单击,而不是上面按扭的单击
回复
twtpdc 2002-04-10
关注
回复
4321 2002-04-10
双击按钮,选择ok就可以进入该button的处理事机,也可以先改button的id,然后再classwizard中选择该id,选择Command,单击add function,然后单击EDit function就可以编写单独的处理事件了。
回复
toxyboy 2002-04-10
呵呵,有意思!
你笑我,他笑我,一把扇儿破!!
回复
YP2002CN 2002-04-10
如果你选定的Button是用来干同一件事情的..你可以把控件的ID号统一
.如果需要各自处理不一样的事情..当然是要分开申请
回复
nne998 2002-04-10
更正:
void CDialog1::OnMyPictureClick(UINT nID)
{
if (nID==IDC_PICTURE2)
{
.........
}
}
回复
nne998 2002-04-10
消息映射ON_CONTROL_RANGE。

例如有IDC_PICTURE1 至 IDC_PICTURE9 那么多个static:
//////////////////////////////////////////////////////////////

//头文件里:
afx_msg void OnButton1();
afx_msg void OnMyPictureClick (UINT nID);

//cpp文件里:
BEGIN_MESSAGE_MAP(CGameDlg, CDialog)
//{{AFX_MSG_MAP(CGameDlg)
ON_CONTROL_RANGE(BN_CLICKED, IDC_PICTURE1, IDC_PICTURE9, OnMyPictureClick) //<---------***注意:这里***
ON_WM_TIMER()
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()


void CDialog1::OnMyPictureClick(UINT nID)
{
if (uID==IDC_PICTURE2)
{
.........
}
}
回复
jackwjy 2002-04-10
你不要用classwizard ,你可以直接用控件的处理函数,如控件是IDC_BUTTON,则你双击该控件,对其对应的函数编辑即可。
回复
welcomeplay 2002-04-10
是要单独的.
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2002-04-10 09:23
社区公告

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