Duilib 简介
DUI lib:是一款基于 DiretUI 技术的轻量级 windows 界面库,以 xml 文件形成界面布局,具备界面风格绚丽,
兼容 ActiveX 控件等特点
DirectUI 技术:Paint on parent dc directly,即直接在父窗口上绘图,所有子窗口均不以窗口句柄形式存在,
只是逻辑上的窗口;
Nim_Duilib 简介
Nim_Duilib 整体组件框架
1、框架中提供了多线程模型、高精度定时器、基本的 xml 解析、zip 解压等功能;
2、封装了一层渲染接口和全局样式资源的统一管理;
3、并且对 DPI 适配、多语言、虚拟键盘、手写板等功能增加了支持;
4、在上层提供了丰富的控件
线程模型和消息队列
开发框架中继承了 Chromium 中 base 库的线程模型和消息队列,base 中包含了多种消息循环、异步操作接口
功能特点
网易 Duilib 框架提供了更加完整和丰富的功能,以满足不同真实业务场景的需求:
丰富的控件、简易的布局
灵活的控件组合、事件处理方式
模块化支持
优化渲染效率
异形窗体支持
DPI 适配支持
多国语言支持
通用样式支持
虚表控件支持
虚拟键盘支持
实用的多线程支持
CEF webview 支持
控件动画、GIF 动画支持
触控设备支持(Surface、Wacom)
抽象渲染接口(为其他渲染引擎提供支持)
页面效果与代码实现
属性表
页面效果
仓库地址
https://github.com/netease-im/NIM_Duilib_Framework.git
总结
从对应的标签来看,总体思路与网页的 HTML 标签类似,层层嵌套,只不过是以 xml 文件的形式实现。与同事交流之后,得知该库相对 MFC 这些而言,屏蔽了一些东西,使之相对简单易理解。不过原理还需要再去读一下源码。如果有不同看法,还请指教。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于