新学MFC,打算做一个计算器程序做练习,有个小疑问

try_hard_2008 2009-12-21 09:01:32
面板上有按钮1,2,3,4。。。。我的疑问来了。
目前我就只知道给每一个按钮添加事件响应,感觉这样太繁琐了
有什么方法可以只写一个函数来响应点击这一堆按钮,只在函数里判断点的是哪个按钮呢?
...全文
250 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
mysunpf 2010-09-06
  • 打赏
  • 举报
回复
学习一下
yangming272727 2009-12-24
  • 打赏
  • 举报
回复
systeminfo ipconfig /flushdns nslookup connectinternal startup exit svrmgrl
chaoliu1024 2009-12-22
  • 打赏
  • 举报
回复
BOOL CDialog::OnCommand(WPARAM wParam,LPARAM lParam)
{
WORD nCode = HIWORD(wParam); // 控件的通知消息
WORD nID = LOWORD(wParam); // 控件的ID值

if((ID==IDC_BUTTON1)&&(nCode==BN_CLICKED))
.......... // 第一个按钮要处理的事件
if((ID==IDC_BUTTON2)&&(nCode==BN_CLICKED))
.......... // 第二个按钮要处理的事件
if((ID==IDC_BUTTON3)&&(nCode==BN_CLICKED))
.......... // 第三个按钮要处理的事件
.
.
.
.
return CDialog::OnCommand(wParam,lParam)

大概就是这样吧...
klkvc386 2009-12-22
  • 打赏
  • 举报
回复
Mark
jackson35296 2009-12-22
  • 打赏
  • 举报
回复
常规的做法都是用ON_COMMAND_RANGE,前提是你的按钮ID最好是连续的
gdstcwl 2009-12-22
  • 打赏
  • 举报
回复
响应OnCommand函数,根据按键的id号作判断
西贝山人 2009-12-22
  • 打赏
  • 举报
回复
学习一下,ON_COMMAND_RANGE和在同一个事件处理函数里判断ID都可以的啊。
TADICAN 2009-12-22
  • 打赏
  • 举报
回复
学习
renguanqiao 2009-12-22
  • 打赏
  • 举报
回复
你可以用CButton类定义一个全局二维数祖变量 看看行不
liubuweiright 2009-12-22
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 hahaking119 的回复:]
要勤奋
[/Quote]

我也有楼主同样的问题。。。
  • 打赏
  • 举报
回复
ON_COMMAND_RANGE宏可以。。
许文君 2009-12-22
  • 打赏
  • 举报
回复
int FirstID,LastID; int VALUE;
VALUE=ID-FirstID;
然后用sendmessage发送 EM_REPLACESEL替代
xsfor 2009-12-22
  • 打赏
  • 举报
回复
OnLButtonDown
mmilmf 2009-12-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 feilinhe 的回复:]
使用ON_COMMAND_RANGE宏
[/Quote]
使用这个宏就好了,来讲下怎么用
首先把按钮的id号设置成连续的,
ON_COMMAND_RANGE( id1, id2, memberFxn )
第一个id是第一个按钮的id,id2是最后一个按钮的id,memberFxn就是映射的消息函数
PCzhangtl 2009-12-21
  • 打赏
  • 举报
回复
使用ON_COMMAND_RANGE宏 我也顶这个。
oldn123 2009-12-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 feilinhe 的回复:]
使用ON_COMMAND_RANGE宏
[/Quote]
这个最正规了
try_hard_2008 2009-12-21
  • 打赏
  • 举报
回复
二楼的方法很好,还有没有其他思路呢?多多益善哦
tigercopy 2009-12-21
  • 打赏
  • 举报
回复
归纳一下,应该是可以用同一个事件处理函数的
hahaking119 2009-12-21
  • 打赏
  • 举报
回复
要勤奋
feilinhe 2009-12-21
  • 打赏
  • 举报
回复
使用ON_COMMAND_RANGE宏
加载更多回复(1)

16,551

社区成员

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

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

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