首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

duilib基本流程

duilib的基本流程如上图,通过解析一个xml文件,将文件中的内容渲染为窗口界面,这个解析过程由WindowImplBase类来完成。 基本框架如下: 1....首先在公共头文件中加入如下内容: #include #include using namespace DuiLib; #ifdef _DEBUG...#pragma comment(lib, "DuiLib_ud.lib"); #else #pragma comment(lib, "DuiLib_d.lib"); #endif 这个是duilib的一些基本配置...这三个函数告知duilib库应该从哪个文件夹下解析哪个xml文件,并定义对应窗口的名字,以后这个类就代表这个xml文件所描述的窗口 需要注意的是这些函数必须在头文件中这样写,我自己写在CPP文件中它在运行时报错...int cx = CW_USEDEFAULT, int cy = CW_USEDEFAULT, HMENU hMenu = NULL); 可以看到它就是对WIN32中CreateWindow的封装,在这duilib

1.5K10

duilib是什么_double blind

部分BUG 一、WindowImplBase的bug 在第8个教程【2013 duilib入门简明教程 — 完整的自绘标题栏(8)】中,可以发现窗口最大化之后有两个问题, 1、最大化按钮的样式还是没变...std::string string_t; #endif 下面是我常用的Unicode定义: #include #include namespace duilib...的整体有所映像了,下面就来介绍下duilib具体控件的使用。...Edit显然就是编辑框啦,Button就不用多说了吧~ 上面提到的控件都是简单控件,拖到设计器上就能直观的看到效果,绝大部分属性都和Button一样,就不赘述了,所有控件的所有属性都在【duilib...而Tab控件的切换会触发selectchanged消息,所以我们可以在这里处理它,此处的处理是切换到相应的Tab页(不过我觉得duilib应该做成自动切换的,无需写代码,只需写前面的XML即可自动切换)

1.3K30

duilib的xml预览工具duilibpreview

由于官方在一次大更新duilib代码之后,自带的设计器源码没有更新,所以自带的设计器已经弃用。貌似最新的github官方库已经看不到这个设计器源码了,不过历史版本应该还是能看到的。...https://github.com/juhuaguai/duilib这个代码仓库里面就有源码。...duilibpreview是由使用duilib的前辈(好像是以前3群的大蓝头)编写的工具,可以作为notepad++等插件,一边编写xml一边预览效果,极大的方便了xml的编写,对duilib的入门很有帮助...最后,这个DuilibPreview.exe的源码也给出了,使用的duilib动态库是根据自己的配置,默认使用是duilib_u.dll,如果你有自己的duilib版本,可以链接你自己的duilib_u.lib...用你自己的duilib_u.dll。

2.2K40

duilib创建自定义控件

在群里还有一些刚刚接触duilib的朋友们问到duilib自定义控件的问题,这里我转载一篇redrain大佬的博文。主要是这篇文章写的太好了,我们直接参考理解就好,我写的肯定没这个好。...需要注意redrain大佬的这篇文章写的时间比较早,是基于早期的duilib版本,新版的duilib略有改动,我在下文中已经进行了修改。        ...用Duilib开发界面时,很多情况下库自带的控件不满足需求,就需要基于Duilib建立自定义控件(自绘新的控件,或者用来封装win32的子窗体,来显示视频、网页等)。        ...从Duilib的自带控件上可以看出,那么GetClass函数返回的字符串一般是DUI_CTR_XXXX,这个经常用于duilib内部识别具体控件类型用。...总结:         差不多就说道这里了,把常见的自定义控件的基本步骤说明了一下,实际开发时还要多看Duilib的源码,才能称心如意的开发控件,希望对刚接触Duilib的朋友有帮助!

2.8K50

如何选择UI框架

Windows界面开发,笔者使用过的方案有三种:MFC、Duilib、WEB(基于CEF运行容器),各有优缺点。...Duilib进行界面开发,其使用DUI技术,通过XML文件编写布局、控件、设置属性,国内很多知名软件(包括微信PC版、91助手、钉钉等)都使用Duilib库作为界面开发库,缺点是有bug很久没有更新,如果自己没有界面开发库的沉淀...,建议将Duilib库作为基础,进行扩展和BUG修订。...笔者在项目实践过程中,采用混合开发方案,将Duilib和WEB两种方案结合起来,对于要求高性能的界面(比如窗口实时渲染)使用Duilib(C++)开发,对于复杂界面、炫酷界面使用WEB开发,然后扩展CEF...提供JS接口让WEB可以跟原生C++层进行通信,基于该通信通道WEB就可以将需要调用原生的逻辑交给C++来实现。

2.3K10

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券