全网首发:网易云信Duilib 源码编译教程以及可执行演示包下载

序言
Duilib介绍
Duilib是windows平台下的一款轻量级directUI开源库(遵循BSD协议),完全免费,可用于商业软件开发,只需在软件包里附上协议文件即可。Duilib可以简单方便地实现大多数界面需求,包括换肤、换色,透明等功能,支持多种图片格式,使用XML可以方便地定制窗口,能较好地做到UI和逻辑相分离,尽量减少在代码里创建UI控件。目前,Duilib库已经渐趋稳定,目前在国内有较为广泛的使用,网络上也有很多的使用教程。

网易云信Duilib介绍
Duilib是在研发易信PC版时被引入,历经六七年的研发过程,相对于原版Duilib,网易云信Duilib修复了一些问题和不足,包括但不限于控件种类不丰富、不支持动画、不支持半透明异形窗体、对多线程支持不好等,目前,网易云信Duilib配合比较高效的引擎库Base解决多线程问题,可以做出功能更强更稳定的客户端界面。

网易云信Duilib特色
多国语言支持
通用样式支持
DPI 缩放支持
GIF 动画支持
CEF 控件支持(CEF 2623 支持 XP)
触控设备支持(Surface、Wacom)
抽象渲染接口(为其他渲染引擎提供支持)
源码使用
克隆项目到你的磁盘中

git clone https://github.com/netease-im/NIM_Duilib_Framework

进入 NIM_Duilib_Framework/samples 目录,使用 Visual Studio 2013 Update 5 以上版本 IDE 打开 samples.sln。

工程目录结构
bin输出目录
docs 文档
libs 静态库
samples 示例Demo程序
third_party 第三方库
toolkits
    ─ base 基础类库

    ─ duilib 核心代码

    ─ shared 工具类库

    ─ ui_components 组件库

模块介绍
Bin:输出目录,各个示例程序输出目录,包含预设的皮肤和语言文件以及 CEF 依赖。
Docs:文档,duilib 接口的说明文档。
Libs:静态库,静态库编译后的输出目录,包含预设的一些 CEF 组件静态库。
Samples:示例Demo程序。
Third_party:第三方库,目前仅有 cef_control 有依赖。
Base:基础类库,提供了基本框架Messageloops,闭包,基本函数库(file、network等),基本类库(time,线程,定时器等),基本工具库(log,加解密)等
Duilib:duilib 核心代码,依赖 base 但不依赖 shared
Shared:工具共享库,对base库,第三方库做的简单的封装,如命令行解析、日志、路径处理,供其他模块使用。
ui_components:组件库,基于 duilib 封装的常用组件库如 msgbox、toast、cef_control 等

 

小伙伴们,都喜欢云信那边整一个bin文件,直接点开看下效果。然而官方只提供了个github源码。确实阻挡了  不会配置VS 和电脑上木装VS的同学,今天放牛哥就专门编译了,奉上全部的源码以及编译工程以及bin文件,点击可以直接执行噢,查看效果

其中演示效果如下:

base_d.exe

cef_d.exe

control_d.exe

layouts_d.exe

multi_browser_d.exe

richlist_d.exe

virtualbox_d.exe

话不多说,云信duilib源码以及可编译工程,下载地址如下:

https://download.csdn.net/download/changshaoke/16395756

忙活了一天时间,下载VS2013,安装搭建环境,编译项目工程,打包源码和bin上传,就象征性的设置了一个积分,放在了CSDN下载资源库里,有需求的朋友,可以愉快的下载学习研究了

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
1.duilib简介 duilib是一个开的DirectUI界面库,简洁但是功能强大。而且还是BSD的license,所以即便是在商业上,大家也可以安心使用。 现在大家可以从这个网站获取到他们所有的码:/p/duilib/ 为了让我们能更简单的了解其机制,我们按照如下顺序一步一步的来对他进行观察: 工具库:用于支撑整个项目的基础 控件库:这是dui最关键的部分之一,相信也是大家最关注的部分之一,另外这里也来看看它是如何管理这些控件的 消息流转:有了控件库,我们需要将Windows窗口的原生消息流转给这些控件,另外在这里也来看看Focus,Capture等等的实现 资组织和皮肤加载:有了上面所有的这些,我们再来看看它是如何自动创建皮肤的 简单使用:最后,来看看到底要如何使用它 以下是duilib工程带的一副总体设计图,在看代码之前看看这幅图,对看代码会很有帮助。 duilib: 2.工具库 由于duilib没有对外部的任何库进行依赖,所以在其内部实现了很多用于支撑项目的基础类,这些类分布在Util文件夹中: UI相关:CPoint/CSize/CDuiRect 简单容器:CStdPtrArray/CStdValArray/CStdString/CStdStringPtrMap 上面这些类看名字就基本能够理解其具体的含义了,当然除了基本的基础库,还有一些和窗口使用相关的工具的封装: 窗口工具:WindowImplBase,这个工具我们在这里不详述,后面会再次提到。 3.控件库 控件库在duilib的实现中被分为了两块:Core和Control: Core中含的是所有控件公用的部分,里面主要是一些基类和绘制的封装。 Control中含的就是各个不同的控件的行为了。 Core部分和控件相关的类图非常简单: duilib-core: 3.1.控件基类:CControlUI CControlUI在整个控件体系中非常重要,它是所有控件的基类,也是组成控件树的基本元素,控件树中所有的节点都是一个CControlUI。 他基本括了所有控件公共的属性,如:位置,大小,颜色,是否有焦点,是否被启用,等等等等。当然这个类中还提供了非常多的基础函数,用于重载来实现子控件,如获取控件名称和ClassName,是否显示,等等等等。 另外为了方便从XML中直接解析出控件的各个属性,这个类中还在提供了一个SetAttribute的方法,传入字符串的属性名称和值对特定的属性进行设置,内部其实就是挨个比较字符串去完成的,所以平时使用的时候就还是不要使用的...
duilib云信table是基于duilib框架和云信SDK而创建的一个表格控件,用于在应用程序中展示和编辑表格数据。 duilib是一个开的C++图形界面库,它提供了丰富的UI控件和界面布局管理功能,使开发者可以快速、灵活地构建界面。而云信SDK是网易公司开发的一套实时音视频通信解决方案,它提供了丰富的音视频通信功能,括语音通话、视频通话、实时消息等。 duilib云信table结合了duilib的UI控件和云信的实时消息功能,使得开发者可以在应用程序中展示表格数据,并且可以通过实时消息功能实现对表格数据的实时更新和同步。 duilib云信table具有以下特点和优势: 1. 界面美观:duilib框架提供了丰富的UI控件和界面布局管理功能,开发者可以自由设计和定制表格的外观和样式,使得表格界面更加美观和符合用户需求。 2. 功能丰富:duilib云信table支持表格的显示、编辑、排序、过滤等常用功能,方便开发者对表格数据进行操作和管理。同时,云信SDK提供的实时消息功能可以实现对表格数据的实时更新和同步,方便多人协作和实时数据交互。 3. 扩展性强:duilib云信table是基于duilib框架和云信SDK的开发,开发者可以自由扩展和定制该控件的功能和行为,满足不同应用场景的需求。 总之,duilib云信table是一个功能强大、界面美观的表格控件,可以方便地展示和编辑表格数据,并通过云信SDK实现实时数据的更新和同步。它的出现为表格数据展示和管理提供了一种简单、高效的解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

放牛哥.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值