转自 https://blog.csdn.net/thanklife/article/details/80091826 不知不觉中使用Duilib已经两周有余了,在使用过程中遇到了很多问题,最终自己也有了一丢丢的认识见解,特记录并分享。 控件 控件及继承关系图 【 ...
上一篇讲了窗口及消息,了解了大体的程序框架。这一篇说的是控件的创建。 duilib支持XML配置文件,即根据XML创建窗口及控件,将界面与逻辑分开,便于修改及维护。上一篇的示例中可以看到在消息WM CREATE中有控件创建的相关代码。 控件创建主要牵扯到类CDialogBuilder: 创建控件树,返回根控件:CDialogBuilder::Create 将控件树关联到CPaintManagerU ...
2013-12-03 15:28 0 4466 推荐指数:
转自 https://blog.csdn.net/thanklife/article/details/80091826 不知不觉中使用Duilib已经两周有余了,在使用过程中遇到了很多问题,最终自己也有了一丢丢的认识见解,特记录并分享。 控件 控件及继承关系图 【 ...
duilib的所有控件均绘制在唯一的真实窗口之中,本篇就具体看下这个绘制的过程。所有的绘制过程均在WM_PAINT消息处理过程中完成。由窗口及消息篇可以看到,窗口消息处理最终流到了CPaintManagerUI::MessageHandler中。包括WM_PAINT在内消息均在此函数中处理 ...
CDateTimeUI 1、该控件继承了CLabelUI控件,该空间并无重写SetAttribute的函数。全部属性跟CLabelUI控件一样。 2、该控件又有CDateTimeWnd类的一个指针用来显示具体让你选择的时间,该类就是创建的是SysDateTimePick32的控件 ...
List控件是我们常用到的控件,也是应用很广泛。 对LIST控件添加元素有两种方法,一种是直接在XML中写死元素,另一种是动态创建。另外,LIST的应用也分为两种,一种需要表头,另一种是不需要表头。对应带表头的LIST,还会分为可拖动表头,和不可拖动表头,以下将会一一 ...
上一篇讲了控件创建,这篇说说控件消息。directui的中心思想是在真实窗口之上画出所有控件,那这些控件是如何获取各自消息的? 通过第一篇的示例可以看到窗口消息的传递过程: CWindowWnd::__WndProc CWindowWnd::HandleMessage ...
一、控件消息的响应。 在HelloDuilib例子中,程序不能退出,在这里,我将添加一个关闭按钮,当点击它时,调用PostQuitMessage进行退出。 首先在界面的右上角添加一个关闭按钮,并取名为“btnClose”。 然后在 CHelloDuilibWnd 中重载 ...
也只是一个皮毛。后来,听朋友说她在驱动人生的时候,驱动人生使用的界面库叫做Duilib。看了下百度,竟然还是国 ...
调用。而控件则根据自身的类型使用CRenderEngine进行绘制。 Duilib技术交流群:7 ...