最近在写mfc,遇到了一些问题,参考了很多网上的例子,结合自己的理解,把主要解决思路记录如下:
很多时候在用写mfc对话框Dialog的时候,会有多个同类型控件响应同一个函数的需求。例如使用代码动态生成许多静态控件,这时就不能通过资源视图
界面对控件添加事件响应,或者在控件数量太多的时候,一个一个地添加事件响应也太过麻烦。mfc中提供了相应的范围映射函数可以一次性地为连续ID的控件添加事件响应函数:
ON_COMMAND_RANGE(IDC_STATIC0, IDC_STATIC10, OnStaticClicked)
此消息映射默认响应用户的左键单击动作;
ON_CONTROL_RANGE(STN_DBLCLK, IDC_STATIC0,IDC_STATIC10, OnStaticClicked)
此消息映射可以自定义消息类型,如这里的STN_DBCLK
是静态控件的双击响应消息ID(当然要想STATIC控件产生响应的话必须把其Notify属性设为 True),同理可以针对自己要处理的控类型选择自己需要的消息类型,个人感觉这个实用性更好。
他们的响应函数原型为void CDlgXXX::OnStaticClicked(UINT nID)
nID记录了响应点击的控件的ID,方便在响应函数里添加对应点的处理程序。
MFC添加ID连续的控件的事件响应
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...