随笔分类 - Duilib
小而美的界面库
摘要:前言 带界面软件可以分两部分:界面显示和消息处理。前面介绍了界面解析绘制和消息处理,而绘制管理器类(CPaintManagerUI)两部分都管理:处理了大部分的绘制工作、控件消息分发处理。 示例 class CDuilibWnd : public CWindowWnd, public INotify
阅读全文
摘要:渲染引擎CRenderEngine:封装GDI //duilib-master\DuiLib\Core\UIRender.h class DUILIB_API CRenderEngine { DrawLine //绘制直线 DrawRect //绘制直角边框 DrawRoundRect //绘制圆角
阅读全文
摘要:例子 CPaintManagerUI m_PaintManager; CDialogBuilder builder; CControlUI* pRoot; pRoot = builder.Create(_T("duilib.xml"), (UINT)0, NULL, &m_PaintMana); m
阅读全文
摘要:入口函数是_tWinMain int APIENTRY _tWinMain( _In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPWSTR lpCmdLine, _In_ int nShowCmd) { // 绘制管理
阅读全文
摘要:Duilib源码下载地址 官网地址:https://github.com/duilib/duilib 源码下载地址https://github.com/duilib/duilib/archive/master.zip Duilib示范例子 使用Duilib编写一个界面软件,本质上还是一个Win32的
阅读全文
摘要:(目录) 前言 在前面有提到:使用Duilib编写一个界面软件,本质上还是一个Win32的软件,只不过这个软件的界面不使用Windows自带的控件,而是交给Duilib绘制界面。 关于消息处理,底层还是处理Window消息,但Duilib会进一步转化成Duilib消息,方便编写响应的逻辑。 例子 /
阅读全文
摘要:(目录) 前言 在前面有提到:用Duilib写一个界面软件,只需要用一个xml文件描述界面长什么样,然后在代码中写上操作界面之后怎么处理就可以了。 “描述界面长什么样”其实就是描述:1、这个界面上有哪些控件?2、这些控件是怎么布局的?这一篇先介绍Duilib自带的标准控件有哪些?然后再介绍这些控件是
阅读全文
摘要:(目录) 原理 静态库文件后缀名是lib,编译的时候合并到软件里面去。 调用静态库需要两件套:1、头文件2、静态库。 特殊的地方:调用Duilib的静态库时,需要先定义静态宏(#define UILIB_STATIC) 步骤 1、新建项目,选择“Windows 桌面应用程序” 2、项目名字定为Dui
阅读全文
摘要:1、复制DuiLib.vcxproj.filters 2、修改成DuiLib_Static.vcxproj.filters 3、Duilib源码的工程中添加现有项目 4、选择duilib-master\DuiLib\DuiLib_Static.vcxproj 5、这里看到使用的是Visual Stu
阅读全文
摘要:(目录) 先介绍下Duilib例子的相关原理,有个大概的认识,再列举具体的步骤。 原理 使用Duilib编写一个界面软件,本质上还是一个Win32的软件,只不过这个软件的界面不使用Windows自带的控件,而是交给Duilib绘制界面。 关于消息处理,底层还是处理Window消息,但Duilib会进
阅读全文
摘要:(目录) 下载源码 官网地址:https://github.com/duilib/duilib 也可以直接点击源码下载地址https://github.com/duilib/duilib/archive/master.zip 编译工具 Visual Studio 2019 编译源码 1、进入duil
阅读全文
摘要:(目录) 比起介绍“Duilib是什么?”,更重要的应该是了解“Duilib解决什么问题?” Duilib解决什么问题? 先聊聊一个话题:怎样做一个有界面的软件? 方案一、自己画界面 最原始的办法是自己绘制界面的所有点线面。 操作系统提供了绘制的接口(Windows API):GDI。 GDI(Gr
阅读全文