DUI lib学习总结

本文详细介绍了DUI lib,一个基于DirectUI技术的轻量级Windows界面库,其特点是XML布局、界面美观且兼容ActiveX控件。相较于MFC,DUI lib开发效率高,仅依赖GDI。它提供了UIDesigner工具进行界面设计,实现了界面与逻辑分离,通过窗口创建、注册、消息管理和事件通知机制来构建和操作UI。关键机制在于Notify虚函数和DoEvent接口,用于消息传递和控件事件处理。
摘要由CSDN通过智能技术生成
windows系统的消息交互流程

1. DUI lib定义
  • DUI lib:是一款基于DiretUI技术的轻量级windows界面库,以xml文件形成界面布局,具备界面风格绚丽,兼容ActiveX控件等特点;
  • DirectUI技术:Paint on parent dc directly,即直接在父窗口上绘图,左右子窗口不以窗口句柄形式存在,只是逻辑上的窗口;
  • DUI lib与MFC相比,MFC界面不美观,界面细节难处理,使用硬编码,开发效率低,使用hook技术可能导致系统不稳定;DUI只依赖于GDI。
  • DUI lib提供了所见即所得的开发工具UIDesigner,开发者可自行设计UI;
  • DUI界面与逻辑处理分离。

2. Duilib库界面显示流程框架
在Duilib中,WindowImplBase 这个类代表了图中 “CWndClass”。
所以我们需要做的是:
1)生成一个XML。
2)生成一个WindowImplBase对象。
3)加载XML。
4)显示窗口。
但是编写的时候,WindowImplBase已经帮我们做了许多工作,我们只需要指定XML路径,它就能够帮助我们自动加载,非常方便。
再次强调:把duilib当作一个类库用,而不是一个语言、IDE、框架。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值