1.Duilib分为几个大部分:
(1)控件
(2)容器(本质也是控件)
(3)UI构建解析器(XML解析)
(4)窗体管理器(消息循环,消息映射,消息处理,窗口管理等)
(5)渲染引擎
2.Win32消息路由如下:
消息产生。
系统将消息排列到其应该排放的线程消息队列中。
线程中的消息循环调用GetMessage(o
在前面已经对duilib有个一个基本的了解,并且创建了简单的空白窗体。这仅仅只是一个开始,如何去创建一个绚丽多彩的界面呢?这就需要一些控件元素(按钮、文本框、列表框等等)来完善。一. Duilib控件简介在之前空白窗体的基础上,在界面上添加了一些控件,让大家先对这些控件效果有个基本的认识。如下图所示:基本控件 高级控件 一些控件的基本显示效果就如同上面两幅图所示。实
曾几何时,当我看到好看的windows 软件界面时,也想亲手写出这么绚丽好看的界面。于是我就到处寻找windows UI编程教程。在一番查找和比较下,最终选择了duilib.主要考虑到了duilib 是开源的,可以通过源码深入了解其界面绘制原理,其次duilib编译后不大。通过学习和使用duilib这么久后,决定记录下,同时也分享下个人的理解。首先从大体上对duilib界面库的理解就是,使用win
原创
2021-04-03 14:19:32
241阅读
【菜单类小知识】 如果不用指针的方式,而直接用变量的方式显示菜单 CDuiMenu menu(_T("Menu/menu.xml")),则不能用ShowWindow,否则会崩溃,因为出了作用域后窗口被销毁了,所以此时可以将CDuiMenu 定义为成员变量、全局变量、或者静态变量,但是做为一个局部使用
原创
2021-08-23 14:14:08
396阅读
最近我一个同学在项目中使用到了duilib框架,但是之前并没有接触过,他与我讨论这方面的内容,看着官方给
原创
2022-05-30 15:44:56
692阅读
文章目录前言1、创建list控件2、创建 ListContainerElement 元素,并添加到 List 控件中,这里的ListContainerElement用xml来表示3、在 ListContainerElement 元素中添加子控件1、List控件2、ListContainerElement控件 前言在 Duilib 中,List 控件用于显示一个垂直滚动的列表,而 ListCont
下面代码是使用 DuiLib 创建一个界面所需的最小化框架。#include <UIlib.h>
using namespace DuiLib;
#ifdef _DEBUG
# ifdef _UNICODE
# pra
原创
2015-06-02 22:50:39
1659阅读
在duilib的实际应用过程中我们可能会遇见很大的数据量需要展示。此时如果
原创
2022-11-17 00:37:39
278阅读
源码下载地址:https://share.weiyun.com/5TSf5mJ通过对listConta
原创
2022-11-17 00:43:03
103阅读
duilib是一个免费的界面库,它可利用xml文件自定义界面元素,并且可以在商业项目中无偿使用。怎样在VS中配置duilib界面库呢?请看下面的介绍。 duilib是一个免费的界面库,它可利用xml文件自定义界面元素,并且可以在商业项目中无偿使用。怎样在VS中配置duilib界面库呢?请看下面的介绍
转载
2019-08-28 23:13:00
242阅读
2评论
CControlUI* background...
转载
2018-01-22 20:47:00
203阅读
2评论
duilib的基本流程如上图,通过解析一个xml文件,将文件中的内容渲染为窗口界面,这个解析过程由WindowImplBase类来完成。 基本框架如下: 1. 首先在公共头文件中加入如下内容:#include #include using namespace DuiLib;#ifd...
原创
2022-05-30 16:04:09
1685阅读
1 stdAfx.h * lengthof(x) 计算数组长度宏 * MAX 两值最大 * MIN 两值最小 * CLAMP(x,a,b) x在a,b之间则取x否则取最小 2 UIBase * UI_WNDSTYLE_ 窗口风格属性 * UI_CLASSSTYLE_ 窗口类属性 * DUITRACE
原创
2021-08-23 14:14:06
534阅读
CControlUI* background...
转载
2018-01-22 20:47:00
222阅读
2评论
基本框架一个简单的Duilib程序一般是下面这个样子的:// Duilib使用设置部分#pragma once#define WIN32_LEAN_AND_MEAN#define _CRT_SECURE_NO_DEPRECATE#include <windows.h>#include <objbase.h>#include ".....
原创
2021-07-17 12:48:21
189阅读
对于其中的菜单事件,考虑了很久,没有一个好的处理,自己的能力不足,因此想到如下的处理办法:(1)头文件中MenuWndeExt.h#pragma oncenamespace ui{ class CMenuWndeExt : public ui::CMenuWnd { public: CMenuWndeExt(); ~CMenuWndeExt(); virtual Control* CreateControl(const s...
原创
2021-07-29 09:05:30
310阅读
转自duilib uilib文档 使用时方便查询duilib属性:[html] view plain copy<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="属性列表.xslt"?> <!-- 可能有错漏,欢迎补充。wangchyz(wangchyz
原创
2021-07-29 09:34:14
1300阅读