Duilib使用问题
self_mind
知识的盛宴,个人的独享!
展开
-
Duilib布局及原理
1.Duilib分为几个大部分:(1)控件(2)容器(本质也是控件)(3)UI构建解析器(XML解析)(4)窗体管理器(消息循环,消息映射,消息处理,窗口管理等)(5)渲染引擎2.Win32消息路由如下:消息产生。系统将消息排列到其应该排放的线程消息队列中。线程中的消息循环调用GetMessage(or P原创 2016-12-01 09:37:30 · 1842 阅读 · 0 评论 -
Duilib六大布局及绝对布局和相对布局
duilib的Layout目录专门放置布局相关的容器控件,这6个布局分别为:Container、VerticalLayout、HorizontalLayout、TileLayout、TabLayout、ChildLayout。容器之间可以任意相互嵌套。一、Container(容器控件): Container布局是其他所有布局以及含有容器特性(如CList、CListCon原创 2016-12-01 09:38:43 · 4786 阅读 · 0 评论 -
Duilib在MFC中的初步使用
一、建立所需的资源及环境(1)头文件 基本所有的头文件都放在四个文件夹之内,分别为Control、Core、Layout、Utils中,在使用过程中不需要再《包含附件目录》中添加各个头文件,因为所有头文件的加载都是在UIlib.h头文件中加载的如: #include "Utils/Utils.h"原创 2016-12-01 09:39:14 · 2242 阅读 · 0 评论 -
Duilib滑动条的使用
滚动条的效果图:代码的使用: else if (strcmp(msg.sType, _T("valuechanged")) == 0) { CTabLayoutUI* pTabControl = static_cast(m_PaintManager.FindControl(_T("tabs"))); if (pT原创 2016-12-01 09:40:29 · 3119 阅读 · 0 评论 -
duilib 捕捉Windos原生消息和自定义消息
一、Windows原生消息 Duilib类中捕捉windows原生消息(如WM_SIZE),可以在重载的虚函数HandleMessage中进行捕捉、处理。所以当我们需要在捕捉某个原生消息后进行一些处理,可以重载虚函数HandleMessage。如LRESULT CDuiFrameWnd::HandleMessage( UINT uMsg, WPARAM wParam, LPARAM lPa原创 2016-12-01 09:41:13 · 1266 阅读 · 0 评论 -
Duilb控件的特殊说明
2.控件的特殊说明1)DUILIB中并没有 TAB 控件。它的实现方式为:使用OptionUI即单选框代表TAB选择框,TabLayout代表窗口显示的区域。当Option被选择的时候,调用CTabLayoutUI::Select (index),即可。具体如何操作,请参看示例。2)DUILIB中并没有单选框。单选框和复选框都用OPT原创 2016-12-01 09:41:45 · 1105 阅读 · 0 评论 -
Duilb QQ桌面上Edit的使用
QQ上的Edit效果如图所示:显示效果:获取焦点后的效果:单击后的效果:Edit失去焦点后的效果:通过分析XML文件发现,该效果是由一个Button和Edit两个空间组合形成的,其中两个空间的大小相等。原理:通过单击按钮,将按钮SetVisible(false),通过将EditSetVisible(ture),同时获取按钮中的内容,赋值给Edit,当Edit失去焦点后,原创 2016-12-01 09:42:42 · 776 阅读 · 0 评论