.h头文件class WindowImplBase : public CWindowWnd, public INotifyUI, public IMessageFilterUI, public IDialogBuilderCallback, public SkinChangedReceiver{pu...
1. 界面描述XML文件Duilib主要是通过XML来进行界面的布局配置,程序通过读取并解析XML文件来创建对应的窗体。DuiLib的页面布局分为三类:窗体(Window)、容器(Contain)和控件(Control)。顾名思义窗体就是要创建的窗口,容器则相当于是窗体内的一个子窗体,可以在容器内添...
分类:
其他好文 时间:
2015-11-17 16:40:50
阅读次数:
244
从GoogleCode上下载的duilib工程中附带的一副总体设计图(如下所示),可以先整体了解一下,有个初步的认识,对后续进一步深入了解学习会很有帮助。通过设计图有了一个初步认识后,接下来开始进一步深入学习了解,主要从以下几个方面进行了解学习:库的组成;框架基本流程;元素创建机制;消息处理机...
分类:
其他好文 时间:
2015-11-17 16:32:53
阅读次数:
185
在Redrainduilib中,委托模式将事件发送与事件处理进行了解耦,并预定义了六个事件处理函数的原型,具体如下(对应源文件UIDelegate.h):typedefbool(*FunVoid)(void*pParam,LPARAMlParam,WPARAMwParam);
typedefbool(*FunTEvent)(TEventUI*pTEventUI,LPARAMlParam,WPARAMwPar..
分类:
其他好文 时间:
2015-11-13 19:26:44
阅读次数:
426
接下来,我们将继续分析UIlib.h文件中其他的文件, UIContainer.h, UIRender.h, WinImplBase.h, UIManager.h,以及其他布局、控件等; 1. UIRender.h:UI渲染器,其中cpp文件中,定义的ZIP压缩相关的数据结构,以及宏操作,与X...
分类:
其他好文 时间:
2015-11-07 13:29:42
阅读次数:
913
国内首个开源 的directui 界面库,开放,共享,惠众,共赢,遵循bsd协议,可以免费用于商业项目,目前支持Windows 32 、Window CE、Mobile等平台。Duilib是一款强大的界面开发工具,可以将用户界面和处理逻辑彻底分离,极大地提高用户界面的开发效率。提供所见即所得的开发工...
分类:
其他好文 时间:
2015-11-05 06:14:39
阅读次数:
484
接下来,我们继续分析UIlib.h文件中余下的文件,当然部分文件可能顺序错开分析,这样便于从简单到复杂的整个过程的里面,而避免一开始就出现各种不理解的地方。 UIManager.h:UI管理器,暂时放在后面介绍; UIBase.h:UI窗口相关,包括常用的窗口风格、窗口类风格的宏定义,调试相...
分类:
其他好文 时间:
2015-11-03 00:28:36
阅读次数:
300
经过上一章的配置之后,我们有了duilib的环境,现在我们可以开始编写一个DUI程序。如果你还不会如何下载与配置Duilib,请移步《DirectUI 学习笔记1-源码下载与环境配置》A:我们新建一个类去继承DUI提供给我们的基类#include pragma once#include //如...
分类:
其他好文 时间:
2015-10-31 21:37:42
阅读次数:
363
上节中提到在遍历创建控件树后,执行了以下操作: 1. CDialogBuilder构建各控件对象并形成控件树,并返回第一个控件对象pRoot; 2. m_pm.AttachDialog(pRoot);m_pm.AddNotifier(this);将控件attach到CPaintManagerUI m...
分类:
其他好文 时间:
2015-10-31 20:06:20
阅读次数:
301
我们可以通过Github上下载开源的duilib库下载地址:https://github.com/duilib/duilib源代码中可以到一些DEMO示例工程以及属性描述的XML,这个后面再说。A:编译现在我们通过VS打开解决方案文件后,开始编译项目。打开项目后,点击生成-批生成,看见图中的窗口后点...
分类:
其他好文 时间:
2015-10-31 20:04:08
阅读次数:
246