今天早上双击一个刚刚编译完成的应用程序,界面刚刚显示,又自动触发了一个菜单事件,打开了一个网页。真的很意外。关闭窗口,再次双击,又自动打开了一个网页,再关闭,再双击,又不自动打开网页了。这是什么情况?

到百度搜索“mfc 菜单 id 范围”,找到一篇来自CSDN的帖子:

http://topic.csdn.net/t/20030708/14/2003847.html

看到最后一位回复者(sxslyy)的内容:

见MFC   windows   程序设计   第199页   ID要为16的倍数,因为windows保留系统菜单ID的低四位自己用,所以使用其中的任何一位,您都可能得到意外的结果.

我才明白,原来菜单的ID不能随便设置值,不然会遇到意想不到的结果。

接着又找到一篇来自微软的文章:
ID命名和数字约定

http://technet.microsoft.com/zh-cn/library/t2zechd4(v=vs.110).aspx

才明白,菜单(Menu)ID,图标资源(ICON)ID,控件ID都有自各不同的取值范置。

关于自定义消息值的范围

在代码中实现了一个自定义的消息 SendMessage() ,今天无意发现原来自定义的消息uMsg的值需要大于WM_USER,比如 WM_USER+1,就行了,再看我原来设置的值:12345,还好没什么问题。

WM_USER (值:1024)

为了防止用户定义的消息ID与系统的消息ID冲突,MS(Microsoft)定义了一个宏WM_USER,小于WM_USER的ID被系统使用,大于WM_USER的ID被用户使用。
2012-09-22

转载于:https://www.cnblogs.com/personnel/p/4584821.html

MFC:ID命名和数字约定相关推荐

  1. 关于Html class id 命名规范

    CSS命名规则 头:header 内容:content/containe 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中:l ...

  2. Mybatis工作流程,附带mybatis的mapper文件和config配置文件模板。mapper文件和dao接口的关系——xml中的namespace和sql标签id命名要求。

    1. Mybatis工作流程 1.1 使用MySQL创建数据库girls并生成一个表boys,如下图. 1.2 创建该表对应的简单实体类Boys,如下图. 1.3 创建Dao接口以及和接口同名的map ...

  3. USACO命名那个数字 Name That Number

    命名那个数字 Name That Number 题目描述 在威斯康辛州牛大农场经营者之中,都习惯于请会计部门用连续数字给母牛打上烙印. 但是,母牛用手机时并没感到这个系统的便利,它们更喜欢用它们喜欢的 ...

  4. MySQL数据库命名规范及约定

    一.[操作规范] 1. 如无备注,则表中的第一个id字段一定是主键且为自动增长: 2. 如无备注,则数值类型的字段请使用UNSIGNED属性: 3. 如无备注,排序字段order_id在程序中默认使用 ...

  5. python命名规则数字开头的成语_day01 Python基础

    课堂随笔: python基础 一 什么是编程语言? 二 计算机组成部分 CPU 内存 外存 输入设备 输出设备 三 安装与使用 1.安装py thon解释器 2.安装pycharm编辑器 3.创建py ...

  6. python命名规则数字开头的成语_day1 python基础

    python基础 一 什么是编程语言? 编程即程序员根据需求把自己的思想流程按照某种编程语言的语法风格编写下来, 产出的结果就是包含一堆字符的文件 强调: 程序在未运行前跟普通文件无异,只有程序在运行 ...

  7. mysql id命名规范_数据库设计规范之命名规范

    命名规范 说明:指数据库对象如表(TABLE).序列(SEQUENCE).过程(PROCEDURE).触发器(TRIGGER)等的命名约定. 1. 基本命名原则 (1)规则1:命名使用具有意义的英文词 ...

  8. 基因ID命名及相互转换

    整理参考:ID转换不用慌,biomart帮你忙 biomart官方指导 由于ID来自于不同的数据库,或者说命名的意图不同,所以对于同一个基因,总是有多个不同的ID,最常见的比如entrze ID.en ...

  9. HTML,CSS的class与id命名规则

    个人博客点这里 最重要的部分先说(命名书写格式) 常见的格式有:连接符(search-btn).下划线.全小(searchbox).小驼峰(searchBox). 现在用得多广泛的还是第一种使用连接符 ...

最新文章

  1. postgres 入门
  2. 原来评分卡模型的概率是这么校准的!
  3. excel取整函数_数据分析小白学习之路(三)——Excel多练熟能生巧
  4. java中多态_Java中多态的理解
  5. (转)Inno Setup入门(六)——在程序目录下创建文件夹
  6. SpringCloud之声明式服务调用 Feign(三)
  7. Oracle to_char() to_date() to_number()函数
  8. 第十期:过去50年间,十大热门语言及发明者大盘点
  9. java post 多文件报头_Spring MVC-------文件上传,单文件,多文件,文件下载
  10. C语言课后习题(32)
  11. java转json数组对象_java对象转json、json数组 、xml | 学步园
  12. UITableView 自带编辑删除 自己定义button
  13. vue2.0桌面端框架_这款优秀的Vue+ElementUI桌面端一站式框架,爱了!
  14. 【优化算法】亨利气体溶解度优化算法(HGSO)【含Matlab源码 127期】
  15. 2016.2.14-2016.2.21 中大信(北京)工程造价咨询有限公司实习有感
  16. 科普下Tippy.js - 开源且高度可做空间php的气泡翻译器
  17. 如何撰写高水平的博士论文?
  18. 绕x,y轴旋转曲面面积公式推导
  19. Unity关节的使用和举例,布娃娃系统
  20. Java EasyWord导出word文档

热门文章

  1. js里面关于IE和万恶的IE6的判断
  2. Oracle 收购Sun之后的演义:IBM 和SAP何去何从
  3. iptables高级应用实例
  4. 四元数乘法_复数的意义——四元数
  5. 仓库码放要求_仓储管理的全流程SOP操作示范,你们公司仓库管理规范吗?
  6. 服务器安装win7系统蓝屏,安装win7系统出现蓝屏| win7安装过程中蓝屏|安装win7系统时蓝屏...
  7. 系统架构设计师含金量_软考高级系统架构设计师如何备考?
  8. 3-31Pytorch与auto-variabletensor
  9. python中如何统计元组中元素的个数_Python:count直到列表中的元素是一个元组
  10. equalwith java_java中==与equal()方法的区别