最近一直以来都在用Duilib做界面,说是在开发界面其实是一边学一边做,本人也是于17年的春节过后开始正式接触这个界面库在此前根本没有听说过个,现在趁领导出差的时间
我把Duilib的窗口创建过程的写出博客记录下来,方便自己和新手以后学习作为参考。Duilib它作为一个界面库,所以不像MFC那样几乎所有的Windows的API都封装,虽然现在MFC现在不再更新库了但是里面的功能是非常强大的所以我的理解是MFC要比Duilib功能强大,呵呵,虽然本人就是学了MFC
好几个月也没有做出漂亮界面,但不能说MFC不能做出漂亮的界面,言归正传。可以明确一点就是Duilib仅仅只是一个界面库,用它做界面能够提高很大效率。整个窗口的创建过程大致如下:
1、Duilib中窗口的创建:在Duilib中有个一个WindowImplBase
它继承自CWindowWnd类,所以我们可以看出Duilib中如果要界面可以继承自这两类其中任何一个,WindowImplBase这个类就是处理很多跟窗口相关的东西,等于减轻了很多常用处理,当然也可以直接继承CWindowWnd类,需要自己处理一些常用消息。这里就拿CWindowWnd类来讲,因为CWindowWnd类里面有注册、创建和一些窗口的操作,我们就不用自己进行编写了,另外一个重要的类就是CPaintManagerUI,一般我们的一个窗口都会带一个CPaintManagerUI的对象,用其来进行空i吉安的操作。Duilib中空间,不同与MFC中的空间,Duilib中所有的空间不是一个独立的子窗口,而是由程序自己画到窗口上的。所有这些控件都有CPaintManagerUI对象来进行管理。
2、CPaintManagerUI类里面有