[EMWIN]不同窗口的ID实验 [待完善]

本文主要的目的是想确定,在widget使用中,使用相同的ID,是否会冲突?

 

前期准备

PC: win7X64 vs2013 

emwin 相关:emwin5.42模拟器,emwin5.42英文手册

 

程序思路

实验一

两个父控件中两个子控件相同ID

1.在桌面窗口上创建两个framewin1 framewin2, 句柄为 win1 win2.

2.在两个framewin中各自创建相同ID (ID_WIDGET) 的 button 控件,且保存 button 的句柄 hBtn1 hBtn2.

 

实验二

同一父控件内两个子空间相同ID

1.在桌面窗口上创建一个framewin1, 句柄为 win1.

2.在framewin1中各自创建两个相同ID (ID_WIDGET) 的 button 控件,且保存 button 的句柄 hBtn1 hBtn2.

 

实验①:

(实验一)通过使用 BUTTON 的 API 对 BUTTON 操作( BUTTON_SetText),

实验②:

(实验一)通过通用 API 对 BUTTON 进行位移等操作( WM_MoveChildTo )

实验③

(实验二)对 hBtn1 和 hBtn2 进行设置文字内容( BUTTON_SetText )

实验现象 

实验①:

 

实验②:

 

实验③ 

 

 

实验结论

从实验一二中可以看出来, emwin 的控件实际上的机制在于句柄,个人认为ID仅仅只是一个标签.

标签不唯一,句柄唯一,故在实际使用中,为避免出错,最好使用保存句柄进行控件的处理.

另外本文只是探索了普通控件下的情况,不包含对话框中使用资源列表创建的控件,如果有人实验出结果,麻烦请留言告知,谢谢.

 

附录

程序代码: 链接:http://pan.baidu.com/s/1eSOt2H8 密码:3dxb

 

2017-11-2 : 增加实验二

2017-10-30 : 初次编写内容(实验一)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值