duilib的入门系列就到尾声了,再次提醒下,Alberl用的duilib版本是SVN上第个版本,时间是2013.08.15~
 
    这里给出Alberl最后汇总的一个工程,戳我下载,效果如图:
 
    
 
2013 duilib入门教程汇总:
 
    对比duilib自带的Demo而言,值得一提的是以下几点:
1、本教程菜单、列表框的使用非常简明,比duilib自带的Demo里简明N倍,看过Demo的应该都知道MenuDemo、ListDemo太绕了。
2、在教程15中介绍的菜单控件实现了阴影窗口,虽然这个是参考Demo里的,但是代码少了N倍,因为菜单的图片就有阴影效果,无需再自行绘制了。
2、提供了CWndUI,用于显示win32、MFC、WTL等HWND类的窗口。
3、提供了CXMLWnd(以XML生成界面的窗口基类),菜单类CMenuWnd、框架类CFrameWnd都继承于它。
4、菜单类CMenuWnd采用了编译期提示错误的方法,强制CMenuWnd只能通过new来声明,防止delete this出错~
 
结束语:
    第一篇始于2013.09.26,最后一篇终于2013.10.06,除了国庆,基本上每天晚上都在写,周末全天都写,耗费了大概7个晚上 + 一个周末。
    而正式学习duilib是在2013.09.09,于2013.09.24基本入门,除去中间有一星期在干其他的,耗费了大概9个晚上 + 一个周末。
    可以发现写教程的时间差不多和写代码的时间一样了,第一次写这么完整的教程,真正感受到了写文档为啥比写代码纠结~~~~(>_<)~~~~
 
    此入门教程是Alberl用duilib模仿原来的MFC程序所用到的知识,已经一一介绍给小伙伴了;下一个阶段将会用duilib来模仿几年前做的仿迅雷播放器界面,之后会做出一个完整的播放器,并且开源出来(注意:开源并不是把代码传上来就完事了,必须配备好详细的文档才算一个合格的开源项目,几年前Alberl已经传过源代码了,最近将整个SVN库都上传了)。Alberl也会配置相应的文档。 先放一张MFC做的土鳖图:
    由于之前都是用MFC,所以要完全模仿迅雷就很困难,界面难免很山寨,不过现在有了duilib之后,界面就不是太难的事啦,Alberl将会模仿目前最新的迅雷播放器,小伙伴们期待不?
    不过得声明的是:
    Alberl几年前开源了一个五子棋项目,并在末尾说了后面会开源播放器,但毕业之后就没时间了,于是就太监了。所以这次卷土重来,但是小伙伴们也不要催时间哦,Alberl只有业余时间才学习这些,所以不能给出具体的时间,只能说尽快~O(∩_∩)O~
    另外就是要看看本次duilib入门教程的反响,如果评价普遍不好的话,Alberl就不继续献丑啦,如果反响不错的话,Alberl会继续下一个系列的教程,就是仿迅雷播放器,后面还会有安装包等一系列完整应用的教程,希望不要太监了~
    小伙伴们,入门教程就讲完啦,如有遗漏,请亲们在评论中补充,如果是属于入门范畴的,Alberl会尽快加上~O(∩_∩)O~

2013 duilib入门简明教程 -- 总结 (20)的更多相关文章

  1. 2013 duilib入门简明教程 -- 第一个程序 Hello World(3)

    小伙伴们有点迫不及待了么,来看一看Hello World吧: 新建一个空的win32项目,新建一个main.cpp文件,将以下代码复制进去: #include <windows.h> #i ...

  2. 2013 duilib入门简明教程 -- 部分bug (11)

     一.WindowImplBase的bug     在第8个教程[2013 duilib入门简明教程 -- 完整的自绘标题栏(8)]中,可以发现窗口最大化之后有两个问题,     1.最大化按钮的样式 ...

  3. 2013 duilib入门简明教程 -- 部分bug 2 (14)

        上一个教程中提到了ActiveX的Bug,即如果主窗口直接用变量生成,则关闭窗口时会产生崩溃            如果用new的方式生成,则不会崩溃,所以给出一个临时的快速解决方案,即主窗口 ...

  4. 2013 duilib入门简明教程 -- 自绘控件 (15)

        在[2013 duilib入门简明教程 -- 复杂控件介绍 (13)]中虽然介绍了界面设计器上的所有控件,但是还有一些控件并没有被放到界面设计器上,还有一些常用控件duilib并没有提供(比如 ...

  5. 2013 duilib入门简明教程 -- 事件处理和消息响应 (17)

        界面的显示方面就都讲完啦,下面来介绍下控件的响应.     前面的教程只讲了按钮和Tab的响应,即在Notify函数里处理.其实duilib还提供了另外一种响应的方法,即消息映射DUI_BEG ...

  6. 2013 duilib入门简明教程 -- FAQ (19)

        虽然前面的教程几乎把所有的知识点都罗列了,但是有很多问题经常在群里出现,所以这里再次整理一下.     需要注意的是,在下面的问题中,除了加上XML属性外,主窗口必须继承自WindowImpl ...

  7. 2013 duilib入门简明教程 -- 界面布局(9)

        上一个教程实现的标题栏代码中,并没有看到处理自适应窗口大小的代码,但是窗口大小变化后,按钮的位置会跟着变化,这是因为我们将按钮放到了HorizontalLayout.VerticalLayou ...

  8. 2013 duilib入门简明教程 -- 前言(1)

        关于duilib的介绍就不多讲了,一来不熟,二来小伙伴们想必已经对比了多个界面库,也无需赘述.下面进入正题:     不看广告看疗效! 已有众多知名公司采用duilib做为界面库,如华为网盘. ...

  9. 2013 duilib入门简明教程 -- 复杂控件介绍 (13)

      首先将本节要介绍的控件全部拖到界面上,并调整好位置,如图:           然后将Name属性改成其他名字,          不能是[控件名+UI+数字]这种,因为这是DuiDesigner ...

随机推荐

  1. ES6详解

    1.ES6新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. const声明常亮,不可改变 2.变量的解构赋值 (1)数组的解构赋值: 以前,为 ...

  2. Swift基础语法(三)

    Array数组在swift中Array相当于oc中的NSMutableArray(变长数组) //1.定义数组 var numarr:Int[] = [,,,,]; var strarr:String ...

  3. 中国UTM分区

    高斯-克吕格投影是“等角横切圆柱投影”,投影后中央经线保持长度不变,即比例系数为1: UTM投影是“等角横轴割圆柱投影”,圆柱割地球于南纬80度.北纬84度两条等高圈,投影后两条割线上没有变形,中央经 ...

  4. 错误 1 error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

    不知怎么本来编译好好的VS2010环境,忽然出现“转换到 COFF 期间失败: 文件无效或损坏”的链接错误.花了好多天,试了好多方法,最终解决了这个问题. 现在罗列一下这几种解决方案: 方案1:点击“ ...

  5. 再谈CSHELL对C程序员的价值

    几个礼拜前,介绍了CSHELL.http://www.cnblogs.com/hhao020/p/4974542.html今天再试着介绍下,希望能有更多C程序员留意到它,从中获益. 很多年前,我在调试 ...

  6. Poj.Grids 2951 浮点数求高精度幂

    2951:浮点数求高精度幂 总时间限制: 1000ms 内存限制: 65536kB 描述 有一个实数 R ( 0.0 < R < 99.999 ) ,要求写程序精确计算 R 的 n 次方. ...

  7. 解决VS2010子目录中的.cpp文件引用上一级目录的stdafx.h找不到定义的问题

    Source目录 |-- stdafx.h |--Util目录 |--Util.h |--Util.cpp 现在的发现Util.cpp各种变量的定义全是红色波浪线,找不到定义,但是却能够编译过 问题就 ...

  8. 简单BigDecimal运算精度

    项目中遇到了数值运算,如网上所写的,一般有这几个方法: /** * 提供精确的加法运算. * @param v1 被加数 * @param v2 加数 * @return 两个参数的和 */ publ ...

  9. <<你最喜欢做什么--兴趣问题清单>>总结

    二.测试作业 你最喜欢做什么--兴趣问题清单 •根据迄今为止已有的经历,你真正喜欢从事的工作是什么?   目前还没有接触工作,就工作而言,凭自己所学的本领和技术去工作,我认为我会喜欢我所做的工作 •休 ...

  10. [置顶]PADS PCB功能使用技巧系列之NO.003- 如何统一修改元件标号字体?

    LAYOUT完毕后进行元件标号字体调整时,你是否试图用Select Document+Select All来选定所有标号?可结果却并不令人满意. (1)在Layout中,选择菜单栏Edit -> ...