
DuiLib使用心得
文章平均质量分 81
使用duilib过程中修复的各种bug,使用心得,和开源的duilib项目
Redrain
Everyone is happy. But, your happiness, often in the eyes of others.
展开
-
cef osr拖拽功能实现
转载请说明原出处,谢谢~~:https://blog.youkuaiyun.com/zhuhongshu/article/details/81485354cef显示web分为窗口模式和离屏渲染模式(osr,off screen rendering)。窗口模式使用起来比较简单,基本的功能都已经实现,包括web内部的拖拽。而osr模式需要实现相关接口比较麻烦窗口模式:窗口模式的拖拽控制接口只需要关心CefDragHandler。class CefDragHandler : public virtual C原创 2020-07-03 16:01:21 · 5054 阅读 · 1 评论 -
duilib 修复combo控件打开下拉菜单后不会自动定位到上次选择的位置上的bug
转载请说明原出处,谢谢: 今天群里一个网友向我反应combo控件的一个bug:单击combo控件,展开下拉菜单后,不会自动定位到上次选择的位置,而是定位到最开头的位置。 带有bug的效果图: 修复后的效果图:原创 2015-02-04 12:42:32 · 7640 阅读 · 3 评论 -
duilib CDateTimeUI 在Xp下的bug修复
转自:http://my.oschina.net/u/343244/blog/370131CDateTimeUI 的bug修复。修改CDateTimeWnd的HandleMessage方法?1234567891011121314转载 2015-01-21 16:02:50 · 2717 阅读 · 0 评论 -
使用duilib开发半透明异形窗体程序(附源码和demo)
转载请说明原出处,谢谢~~: 半透明异形窗体的功能在之前维护的老版本的duilib里面已经有了基本的功能,但是因为一直存在较多的缺陷,所以我一直建议少用,就连我自己写仿酷狗项目也只是在几个小地方用了半透明异形窗体。不过今天在群里和其他几位朋友讨论后,发现了之前的许多问题以及解决方法。所以我立马修复了当前的库,并且写了一个半透明异形窗体的demo来测试效果。原创 2015-02-05 19:58:45 · 16146 阅读 · 6 评论 -
入门学习duilib的要点
转载请说明原出处: 在QQ群里经常会有刚开始学习duilib的朋友加入,问到一些属性用法和布局问题。为了避免一遍一遍重复回答,今天写个入门文章,简单说一下刚开始学duilib需要注意的地方,和学习duilib的方法。 alberl写过《duilib入门简明教程》和《duilib进阶教程》,是很不错的入门教程。再搭配duilib自带的9个demo,就原创 2015-02-14 13:24:02 · 10588 阅读 · 7 评论 -
duilib 修复padding属性导致其他控件自动计算宽高度错误的bug和导致自己宽高度错误的bug
转载请说明原出处,谢谢~~: 今天在写项目的一个布局时,用到了最常用的相对布局属性padding:在一个纵向容器里,给其中的各个子元素设置了padding属性来做相对布局。但是出现了很奇怪的现象:容器的最后一个元素本应该在最底部,但是实际却流出了一部分空白。 实际上这个bug早在我写仿酷狗时就遇到了,当时没有很注意,就用了绝对布局去解决原创 2015-01-21 02:12:52 · 4644 阅读 · 4 评论 -
Redrain 通用菜单控件使用方法和说明(增加动态添加功能、附源码和demo)
转载请说明原出处,谢谢~~:http://blog.youkuaiyun.com/zhuhongshu/article/details/38253297 2015.1.19 Redrain原创 2015-01-19 23:38:33 · 8426 阅读 · 12 评论 -
Redrain个人维护并使用的DuiLib和UiLib库源码下载地址
我把我自己使用的Duilib和Uilib库都上传到了GitHub,完整的Duilib库代码下载地址:点击打开链接 这是我自己使用的Duilib和Uilib库,修复了我在博客中说明的所有bug以及很多还没有去说明的bug,同样也包含别人修复过的bug。库里面包含我扩展过的部分控件。以及添加了Duilib扩展群群主heat的透明异形窗体功能的支持。 这个库是我用v原创 2014-11-03 14:32:25 · 45672 阅读 · 32 评论 -
仿酷狗音乐播放器已开源!
这是Redrain仿酷狗音乐播放器的完整代码,目的是帮助更多使用DuiLib的朋友学习这个库,如果代码有bug,或者对程序有疑问,可以联系我个人QQ或者QQ群,我经常在DuiLib QQ群活动,这个代码中包含了webkit内核浏览器、音乐播放类、菜单类、换肤功能等等。原创 2014-11-12 08:52:42 · 34970 阅读 · 70 评论 -
Redrain仿酷狗音乐播放器开发完毕,发布测试程序
转载请说明原出处,谢谢~~ 从暑假到现在中秋刚过,我用duilib开发仿酷狗播放器大概经历了50天。做仿酷狗的意图只是看原酷狗的界面比较漂亮,想做个完整一些的工程来练习一下duilib。今天把写好的程序代码综合一下,发布测试版。测试版的程序肯定会有不少bug,而我自己也没有精心去测试程序,希望发现问题的朋友联系我一下,我去修正。 软件界面上绝大多数的控件的功能我都写出原创 2014-09-09 14:41:51 · 12230 阅读 · 31 评论 -
基于wke封装的duilib的webkit浏览器控件,可以c++与js互交,源码及demo下载地址
转载请说明原出处,谢谢~~ 是原创 2014-08-13 19:27:22 · 17295 阅读 · 47 评论 -
duilib各种布局的作用,相对布局与绝对布局的的意义与用法
我使用duilib快3个月了,总体感觉duilib的使用还是较为简单的,只是刚入门时可能有些摸不清头脑。今天写一篇关于duilib的入门日志,大致说一下duilib中的各个布局的作用,以及很关键的相对布局与绝对布局的意义于用法。希望可以帮到使用duilib的新手朋友们。duilib高手就可以直接省略这篇文章了!原创 2014-08-13 11:46:44 · 37109 阅读 · 20 评论 -
为duilib的MenuDemo增加消息响应,优化代码和显示效果
扩展duilib MenuDemo,制作通用菜单原创 2014-07-29 08:20:20 · 12604 阅读 · 24 评论 -
仿酷狗音乐播放器开发日志二十七 用ole为窗体增加文件拖动功能(附源码)
转载请说明原出处,谢谢~~原创 2014-09-09 13:14:18 · 4080 阅读 · 1 评论 -
duilib底层机制剖析:窗体类与窗体句柄的关联
看到群里朋友有人讨论WTL中的thunk技术,让我联想到了duilib的类似技术。这些技术都是为了解决c++封装的窗体类与窗体句柄的关联问题。而我觉得duilib解决这个问题的方法要比thunk简单好用原创 2014-09-19 14:46:17 · 7157 阅读 · 6 评论 -
duilib中控件拖拽功能的实现方法(附源码)
duilib库中原本没有显示的对控件增加拖拽的功能,而实际使用过程中拖拽功能也是有用武之地的。看群里有人问题duilib怎么支持拖拽,我也就写这篇文章说明一下duilib实现控件拖拽的方法。原创 2014-11-15 13:09:44 · 12990 阅读 · 11 评论 -
duilib 使用图片素材或者算法给窗体增加阴影(源码和demo)
转载请说明原出处,谢谢: 之前我写的程序使用阴影时,一直是使用codeproject网站上的WndShadow类,并且把它当作单独的模块来使用,后来觉得使用阴影的情况非常多,所以今天就把这个类改写了一下,让他融入到duilib,并且可以直接使用xml来描述阴影,不需要写任何c++代码。 以前的WndShadow类是用算法来计算阴影,灵活性很大,原创 2015-01-10 09:51:16 · 10369 阅读 · 15 评论 -
duilib 增加gif控件(基于gdi+,可控制播放暂停,自动设置大小)
转载请说明原出处,谢谢~~: 因为项目需要我需要给duilib增加一个gif控件,目前已经有了gif控件有很多版本,我去搜集了一些控件,但是都没有自己满意的。原uilib库中已经有GifAnim控件,但是这个控件给出的控制功能不足,不可以控制播放、暂停、停止。当控件隐藏时也不会停止播放动画,会影响效率。 于是在原GifAnim的基础上做了增强,增原创 2015-01-07 21:41:45 · 6554 阅读 · 11 评论 -
修复duilib CEditUI控件和CWebBrowserUI控件中按Tab键无法切换焦点的bug
在duilib中,切换焦点一直存在bug:当窗体中无CEditUI或者CWebBrowserUI时,按tab键会让焦点在Button一类的控件中切换。而当存在CEditUI或者CWebBrowserUI时,CEditUI或者CWebBrowserUI获取焦点后,再点击tab键,焦点就不会转移到其他控件上了。今天解决了这个bug,记录到博客里。原创 2014-11-28 13:33:25 · 7175 阅读 · 4 评论 -
duilib 给List表头增加百分比控制宽度的功能
转载请说明原出处,谢谢~~: 最近项目里需要用到包含表头列表,而窗体大小改变后,每个列表项的宽度不会自动改变,这样窗体变宽后列表就出现了一大片空白,非常难看。所以给列表头增加了属性,可以控制让每个列表项的宽度根据百分比来计算。这样再配合我之前写的对List控件的增强代码,就能让列表项的每列按照百分比控制宽度。 分别要给CListHeaderUI类和CL原创 2015-01-07 21:58:51 · 4801 阅读 · 4 评论 -
关于仿酷狗音乐播放器开源:寻求一套音乐播放器素材,让仿酷狗开源
转载请说明原出处,谢谢~~原创 2014-11-11 16:38:15 · 7229 阅读 · 9 评论 -
duilib 修复Text控件无法设置宽度的bug,增加自动加算宽度的属性
转载请说明原出处,谢谢~~: 今天有朋友反映CTextUI控件无法设置宽度,于是修复了这个bug,顺便给Text控件增加了一个自动计算宽度的属性,描述如下 bug出现在EstimeteSize函数,修复后的主要代码如下: SIZE CTextUI::EstimateSize(SIZE szAvailable) { RECT rc原创 2015-01-05 11:01:59 · 3358 阅读 · 0 评论 -
duilib 修复CTreeViewUI复选功能判断不准确的bug
转载请说明出处,谢谢~~: CTreeViewUI里面自带了复选的功能,但是复选功能存在bug: 1)当一个分组下面存在子项时,子项被手动全选后,分组的复选框没有自动变为选中状态 2)当一个分组下面存在子项时,当所有子项都取消选中状态时,分组的复选框还是选中状态原创 2014-12-30 14:06:05 · 3193 阅读 · 1 评论 -
duilib 修复CTreeViewUI控件动态添加子控件时,对是否显示判断不足的bug
转载请说明出处,谢谢~~: 这个bug我在仿酷狗开发日志里提到过,不过后来发现修复的不够好,后来重新修改了代码,并记录到博客。问题描述: 在仿酷狗程序中,动态添加音乐项目到播放列表里,这是必须的功能,动态添加的功能已经做好。但是我发现,当一个分组本来在收缩状态下,这是给它动态添加音乐项目就会发生很搞笑的问题:分组是收缩状态,而动态添加原创 2014-12-30 13:45:15 · 4378 阅读 · 0 评论 -
duilib List控件,横向滚动时列表项不移动或者显示错位的bug的修复
转载请说明出处,谢谢~~: 关于这个bug的修复我之前写过一篇博客,连接为:http://blog.youkuaiyun.com/zhuhongshu/article/details/40622705 本以为已经修复好,但是后来有网友私聊我,反映到还存在bug。原本已经解决的bug如下: 1.当List出现滚动条后,拖动滚动条,这时List原创 2014-12-30 13:26:43 · 5638 阅读 · 2 评论 -
duilib让不同的容器使用不同的滚动条样式
装载请说明原出处,谢谢~~ 以前在给一个容器设置横纵向的滚动条时,一直是通过设置xml的Default标签来完成的,但是这样做有个很大的缺点就是,这个窗体里面的所有滚动条的样式只有一种。有些情况下需要为不同容器设置不同的滚动条样式。 其实duilib已经有这个功能了,在CContainer容器类里面有两个属性:vscrollbarst原创 2014-12-29 17:11:38 · 6825 阅读 · 0 评论 -
增加duilib edit控件的提示功能和多种文字颜色
转载请说明原出处,谢谢~~: duilib的CEditUI控件内部使用了win32的原生edit控件,最近在做的一个项目里需要增强CEditUI控件的一些功能,我就把改进的代码写到博客里。实际上改进代码很简单,不过也许能其他人会用到,就不用再费时了。 增加的功能如下: 1、增加提示文本,并且可以设置提示文本的颜色,当CEditUI初始化或者无文本的状原创 2014-12-07 12:20:58 · 9923 阅读 · 10 评论 -
DuiLib消息处理剖析
本来想自己写写duilib的消息机制来帮助duilib的新手朋友,不过今天发现已经有人写过了,而且写得很不错,把duilib的主干消息机制都说明了,我就直接转载过来了,原地址:http://blog.163.com/hao_dsliu/blog/static/1315789082014101913351223/duilib官方github地址: https://gi转载 2014-12-04 16:00:28 · 10014 阅读 · 1 评论 -
改进duilib的richedit控件的部分功能
转载请说明原出处,谢谢~~ 如果要使用原创 2014-11-17 15:01:40 · 11258 阅读 · 1 评论 -
duilib中的V和H布局中滚动条问题
转自博客:http://blog.youkuaiyun.com/damingg/article/details/41149037首先看一段xml代码[html] view plaincopy xml version="1.0" encoding="utf-8"?> Window size="300,200" caption="0,0,300,2转载 2014-11-15 21:49:29 · 4864 阅读 · 1 评论 -
duilib List控件,横向滚动时列表项不移动或者移动错位的bug的修复
转载请说明出处,谢谢~~ 群里有朋友提到了使用Combo控件时,当下拉列表出现,此时鼠标滚轮滚动,下拉列表就自动消失了。我看了一下源码,这个bug的修复很简单。 CComboUI控件被单击时创建CComboWnd窗体来模拟下拉菜单。CComboWnd类在HandleMessage函数里处理了鼠标滚动消息WM_MOUSEWHEEL,他把这个消息转发给CComboUI的Do原创 2014-10-30 17:56:25 · 4254 阅读 · 4 评论 -
duilib combo控件,当鼠标滚动时下拉列表自动关闭的bug的修复
转载请说明出处,谢谢~~ 我在仿酷狗音乐播放器的开发日志系列里,曾经提到了这个bug,文章地址为:http://blog.youkuaiyun.com/zhuhongshu/article/details/38145365。但是当时的开发日志里,我对bug的描述过于简单。所以重新说明一下。 使用Duilib时,当为一个控件指定了float属性,也就是使用了绝对布局,那个控件的原创 2014-10-30 16:54:35 · 3803 阅读 · 1 评论 -
duilib relativepos属性导致控件错误的bug修复
转载请说明出处,谢谢~~ 我在仿酷狗音乐播放器的开发ri'zhi原创 2014-10-30 16:43:11 · 2647 阅读 · 1 评论 -
duilib 的IE浏览器控件去边框和去滚动条的代码
转载请说明原出处,谢谢~~原创 2014-10-23 11:37:56 · 4214 阅读 · 4 评论 -
解决duilib使用zip换肤卡顿的问题(附将资源集成到程序中的操作方法)
转载请说明原出处,谢谢~~ 是原创 2014-10-16 13:04:29 · 6830 阅读 · 19 评论 -
让程序使用自带的字体文件
转载请说明原出处,谢谢~· 在原创 2014-09-19 12:14:24 · 8032 阅读 · 7 评论 -
duilib corner属性的贴图技巧——让图片自动贴到控件的的某一边或者一角并自适应控件的大小
转载请说明原出处,谢谢~~ duilib的g原创 2014-08-29 19:28:07 · 6722 阅读 · 1 评论 -
duilib入门之贴图描述、类html文本描述、动态换肤、Dll插件、资源打包
转载自duilib入门文档1 贴图描述Duilib的表现力丰富很大程度上得益于贴图描述的简单强大。Duilib的贴图描述分为简单模式和复杂模式两种。简单模式使用文件名做为贴图描述内容,在这种方式下,此图片将会以拉伸方式铺满控件。复杂模式使用带属性的字符串表示贴图方式,既支持从文件中加载图片,也可以从资源中加载,具体如下:l 如果转载 2014-08-18 13:02:14 · 4739 阅读 · 0 评论 -
uilib库gdi句柄泄漏bug修复,duilib防止gdi泄漏的小提醒
转载请说明原出处,谢谢~~ 今天原创 2014-08-12 21:11:14 · 3646 阅读 · 5 评论 -
用duilib制作仿QQ2013动态背景登录器
转载请说明原出处,谢谢~~原创 2014-08-10 12:38:03 · 8054 阅读 · 2 评论