|为什么对话框控件ID定义从100开始?
文章图片
你可能注意到这样一个现象:
当在对话框编辑器里添加一个新的控件的时候 , 通常情况下 , 控件的ID以100开始 , 这是为啥?
因为小于100的数已经被使用了 , 如果你打开资源ID定义文件 , 就一清二楚了:
【|为什么对话框控件ID定义从100开始?】对话框管理器它能够自动识别这些特殊的ID值 。 如果你的对话框上 , 某个控件和这些特殊ID值相同 , 则这个控件将会自动带上这些特殊控件的行为 。
具体来说 , 假设一个控件的ID是IDOK , 则对话框管理器会假设这个按钮是一个OK按钮 。 如果用户点击回车按键 , 则对话框上的默认按钮就会被按下 。 如果对话框上没有默认按钮 , 则OK按钮会被按下 。 类似的 , 如果一个控件的ID是IDCANCEL , 则对话框管理器会认为它是一个Cancel按钮 。 如果用户点击ESC或者角落上的关闭按钮 , 则这个Cancel按钮会被按下 。
如果你的对话框有OK和Cancel按钮 , 请确保它们的ID被分别设置为IDOK和IDCANCEL , 这样它们就可以和系统默认的按钮行为一致了 。 反过来说 , 如果一个控件的ID是IDOK或者IDCANCEL , 则请确保这个控件在设计上是一个OK或者Cancel按钮 。 否则 , 用户使用的时候 , 会感到疑惑 , 甚至会说不好的话 , 例如:这Template Module啥玩意儿?
总结猿友在专注代码的时候 , 一定要时不时将自己假想成用户 , 感受一下用户使用你的软件时的感受 。
如果你觉得这东西使用还挺流畅 , 心情愉悦 , 则代表你开发的东西还不赖 。
如果你觉得如鲠在喉 , 甚至想要骂娘 , 则此时你应当心里有数:你在开发一个神马东西 。
最后Raymond Chen的《The Old New Thing》是我非常喜欢的博客之一 , 里面有很多关于Windows的小知识 , 对于广大Windows平台开发者来说 , 确实十分有帮助 。
本文来自:《Why do dialog editors start assigning control IDs with 100?》
- 移动通信|为什么越发达的国家,越要保留固定电话?“无隐私时代”有多危险
- iPad Pro|同样是中国通信网络运营商,为什么中国移动的用户是最多的?
- 阿里巴巴|陈根:阿里并购,为什么总是绝对掌权?
- |在中国已经得到普及的移动支付为什么在国外几乎不见踪迹?
- 纵杆|为什么单列视频信息流更无脑?
- 鄙视|科技对生活的影响,为什么科技越发达,人类反而活得越累?
- iphone13|苹果公司一分钱不给,为什么QQ要iPhone在线?
- 机器人|苹果为什么值三万亿,不就是卖手机和笔记本吗?
- 物联网|都是远距离非蜂窝通信协议,为什么不用LoRa、WiFi,而是用ZigBee
- 设计师|为什么说人人都是设计师?