emWin界面库注意事项之自定义回调函数之后,句柄为0

        由于在嵌入式设备上可供使用的界面库很少,项目当中所使用的界面库为德国SEGGER公司开发的emWin界面库。使用上和windows的GDI大致类似,也提供了丰富的API接口。如果我们需要对控件进行自绘的话,一定要进行的一个操作是通过设置回调函数,获取控件的消息循环,进行自定义处理。回调函数的命名一般为_cb函数名的方式。

     通过设置了回调之后,我即可以在控件内部进行自绘了,但是如果我们想要重新获得控件的句柄时,就会发现无法利用控件的API进行操作了。原因是为什么呢?

   这是因为在设置了自定义的用户回调函数之后,重新调用WM_GetDialogItem函数获得的句柄时0,所以你无法进行操作。

   唯一的解决方法是,在设置回调函数之前,即对句柄进行赋值,而后对句柄进行操作即可。

猜你喜欢

转载自blog.csdn.net/helinlin007/article/details/51119029