记得大一学C语言的时候,觉得黑白窗很无聊,后来在网上找到了EasyX (一个模仿turbo c的图形库)http://www.easyx.cn ,用它写一些贪吃蛇、扫雷这类有图形界面的游戏来练手。 当时学的时候就很好奇为什么调用这些函数就能绘制图形,后来从网上了解到了Windows编程,于是从淘宝淘了本《Windows程序设计》看了起来,当时看的时候还有点吃力。
趁着大一结束后的那次暑假我看完了王爽老师编写的《汇编语言》,对计算机内存、CPU等底层方面的知识有了更深一层对的了解后,才重新拾起《Windows程序设计》。当时大二也开始学C++了,还记得“亮欧巴”教完谭浩强写的C++,还不能真正理解面向对象的意义,我在直接用Win32API写窗口程序的时候也感觉到要做很多重复工作,写很多模板代码(但当时自己完全不知道怎么用C++去封装Win32API),于是在网上找了些资料,还记得有一位大神出的视频里面讲了MFC的封装原理后,我自己才试着封装了Win32API(当然没使用MFC的消息映射机制,直接用了C++的虚函数多态),之后才明白C++的诞生是计算机工业发展的必然。学完后立马花了2个多月的时间写了个浏览器(为了应付学校的考试,也为了寒假回家过个好年,无奈拖长战线),当然网页显示直接使用MFC封装好的CHtmlView,这其中80%的时间都花在写界面上,当时还不知道开源社区有封装好的MFC控件,也不知道有CBitmapButton这类东西,完全自己封装,最终写出来的界面还贼TM丑,其实这也归结于当时不会PS,搞得后来很多功能都不愿完善了。


最终我在网上了解到DirectUI这项技术,虽然微软没有为开发者提供技术支持,但网上的总有一大批大牛人物敢于挑战。
下面我以开源与否列举几个知名的。

开源界面库

DuiLib

首先要说的就是大名鼎鼎的DuiLib,国内很多大小公司都在使用该界面库,比如华为网盘,腾讯微信,百度杀毒 and so on。。。这个库是借鉴了国外的大牛Bjarke Viksoe写的Windowless库。据说DuiLib是国内第一个开源的DirectUI界面库,有很多界面库也是基于DuiLib二次开发的。随着时间的洗礼,很多其他界面库都慢慢销声匿迹了,DuiLib算是活的最好的。下面是我以前写过的几个小程序。

RingSdk

这是国内的前辈自己写的类库,这里给出前辈对RingSdk的介绍http://blog.csdn.net/ringphone/article/details/2911244

金山界面库BKWin

这是金山公司开源的一款界面库,相对个人维护的界面库而言,是更可靠的。
相关链接:http://code.ijinshan.com/index.html

上面三个界面库可以说是国内最知名的开源界面库,其他很多界面库都是来源于这三个界面库(有些库只是将名字改改,就自立一派,( ﹁ ﹁ ) ~→真不想吐槽天朝的盗版能力)


商业库

UIPower

老贵的一款商业界面库,但听说产品确实不错,也有很多知名企业使用他们的界面库,比如:招商银行,瑞星杀毒,农业银行,中信证券… 前期华为网盘也是使用这个界面。貌似还能跨平台(用不起,也就无法考证),公司老总还亲自出了一系列相关视频,上个月阙总还到DuiLib交流群宣传他们公司的产品,O(∩_∩)O~~。
公司官网:http://www.uipower.com

迅雷Bolt

Bolt界面引擎是迅雷公司从2009年开始开发的第四代界面库。迅雷7是首个采用该引擎成功开发的产品,目前迅雷旗下大部分客户端产品都基于该引擎开发,并稳定运行于超过3.5亿台PC上。
文档方面也比较齐全,唯一的遗憾是闭源。
http://bolt.xunlei.com/

Skin++

貌似是UIPower之前的产品,最近也没什么动态了。

LibUIDK

LibUIDK是国际上顶尖的专业开发Windows平台下图形用户界面的开发包,也是国内第一款商业的高级界面开发工具。该开发包基于Microsoft的MFC库。使用此开发工具包可轻易把美工制作的精美界面用Visual C++实现,由于LibUIDK采用所见即所得的方式创建产品界面,所以极大的提高了产品的开发速度,并大大增强图形用户界面(GUI)的亲和力。LibUIDK还可以使您的软件轻松具有当今流行的换肤功能,以提高产品的竞争力。

Flash4UI

Flash4UI 可以让普通的C++应用程序使用flash作为UI,从而使UI开发变的极其轻松。
通过flash的超炫效果,可以使软件提升几个档次。
不过Flash技术日渐甚微,这或许也不是最好的选择。

clayui

现在支持的系统包括android,windows,wince,linux。clayui的特点是能实现各种2D,3D动画,一些WPF,FLEX才能实现的界面效果,通过clayui可以很方便的实现。
clayui的底层渲染支持纯软件渲染,d3d,opengl es硬件加速渲染,您可以根据自身的需求选择合适的渲染方式,使您界面的用户体验达到最佳效果。
clayui自带的界面编辑系统使您可以很容易的创建界面布局,编辑各种动画效果,彻底实现界面与逻辑的分离,您可以很容易的实现动态换肤,动态换布局,动态更换动画效果。

DSkinLite

DSkinLite界面库如其名称“lite”一样,是一款轻量级的C++界面库。未使用复杂的Hook操作,仅使用替换窗口过程的方式(SubclassWindow)来处理控件界面绘制。使用XML文件管理GDI资源如颜色,字体,图片,并描述界面构成, 同时UIEASY首次创造性的将界面构成元素抽象为线条元素,矩形元素,图片元素,文本元素,并提供相应规则来使用这些元素“组合” 界面。这极大的提高了界面库产品的灵活性,使得界面库产品可以随意构造出多种多样的控件界面。
官网:http://www.uieasy.cn/

codejock

国外的一个提供MFC控件,COM组件技术支持的公司,这个公司提供很多界面方面的支持。三星,惠普,eBay,福特等国际公司都和他有过合作。
http://www.codejock.com

魔方界面库

不知道跟软媒有什么关系,看软媒魔方的界面像是用了这个库。
http://www.muilib.com/

Windows C++界面库相关推荐

  1. 仿迅雷播放器教程 -- C++ windows界面库对比(11)

    从上一篇文章中可以看出,C++的界面方向还很弱,没有任何一个界面库可以一统天下,所以才造成了界面库百家争鸣的情况. 从时间上看: 1.出来最早的是QT,1991年就有了. 2.VC++ 虽然1992年 ...

  2. 以金山界面库(openkui)为例思考和分析界面库的设计和实现——代码结构(完)

    三年前,准备将金山界面库做一个全面的剖析.后来由于种种原因,这个系列被中断而一直没有更新.时过境迁,现在在windows上从事开发的人员越来越少,关注这块的技术的朋友也很少了.本以为这系列也随着技术的 ...

  3. 以金山界面库(openkui)为例思考和分析界面库的设计和实现——问题

    随着物质生活的丰富,人们的精神生活也越来越丰富.人们闲暇的时间也相对变多,于是很多人就开始寻找打发时间的方法.其中电视便是其中一种非常重要的消遣方式.假如我们打开电视机,看到了一个电视台正在播一部我们 ...

  4. 嵌入式python 图形界面_有哪些好的嵌入式操作系统界面库(GUI library)?

    20190809上面答案没提到的,个人认为好用的 1.LittlevGL LittlevGL 是一个开源免费(MIT许可)的GUI,支持触摸屏操作,移植简单方便,开发者一直在不断完善更新.Little ...

  5. VC界面库BCGControlBar和Xtreme Toolkit详细对比评测

    概述:如今对软件界面的要求越来越高,如用Delphi.VS2008等开发底层的应用程序时,效率远不如VC++.虽然Visual Studio集成了一些MFC的类库,但是这些只是基础应用,并不能满足大多 ...

  6. 一些界面库比较以及如何选择界面库

    记得很早的时候看了一个哥们写的界面库的使用历程,当时还挺有感触的,不断地尝试,不断地被坑,最后有两条结论: 1.自己积累界面库: 2.买就买贵的.好的,并且提前根据自己需要协商好. 今天又重看关于界面 ...

  7. lua运行外部程序_LTUI v2.2 发布, 一个基于lua的跨平台字符终端UI界面库

    LTUI是一个基于lua的跨平台字符终端UI界面库. 此框架源于xmake中图形化菜单配置的需求,类似linux kernel的menuconf去配置编译参数,因此基于curses和lua实现了一整套 ...

  8. 由AFX_IDW_PANE_FIRST宏的含义分析界面库XTP的一个bug

    Codejock的界面库Xtreme Toolkit Pro(XTP)是当前MFC开发中发展得比较成熟,应用也颇为广泛的几个界面库之一,其强大的界面美化功能以及简便的使用步骤深受不少MFC程序员的青睐 ...

  9. 标准C函数库头文件、POSIX标准库头文件和Windows API函数库头文件说明

    1. 标准C函数库头文件 名字 源自 描述 <assert.h> 包含断言宏,被用来在程序的调试版本中帮助检测逻辑错误以及其他类型的bug. <complex.h> C99 一 ...

  10. android 很多牛群叉界面库github地址

    android 很多牛叉界面库github地址 点击可到达github-------https://github.com/Trinea/android-open-project Android开源项目 ...

最新文章

  1. 别让SSL证书暴露了你的网站服务器IP
  2. linux系统默认硬盘启动,帮助中心--起点操作系统(StartOS)官方网站
  3. Python之max(num, key=lambda x:x[0])用法的详细解析
  4. 空except的慎用
  5. ”System.Configuration.ConfigurationSettings.AppSettings“ 已过时----解决方案
  6. 让软件不在添加删除程序_功能强大却鲜为人知的四款软件,一但发现就无法自拔...
  7. 深浅克隆面试题汇总——附详细答案
  8. CVPR2021 最具创造力的那些工作成果!
  9. 理论题 —— Windows 7基础知识
  10. 短文本相似度比较:simHash简介以及java实现
  11. MATLAB---画三角函数图像
  12. 华三数据中心SDN技术发展应用
  13. 微信公众号推文封面图设置
  14. 新能源汽车智能化,集度先行一步
  15. 五个喜欢点赞图标动画特效(附源码,效果图)
  16. 频数直方图的步骤_怎么用EXCEL制作频数分布表和直方图
  17. oracle中去掉回车、Tab、制表、空格等特殊符号
  18. JMeter逻辑控制器 详解
  19. 小米9.0系统设备(亲测有效)激活xposed框架的步骤
  20. ElasticSearch 的分数 (_score) 是怎么计算得出 (2.X 5.X)

热门文章

  1. 【Android 10 源码】深入理解 MediaCodec configure
  2. 从零开始撸一个ajax框架
  3. 下载——百度文库下载方法
  4. PSP3000/2000V3用5.03-GEN-C系统安装使用教程
  5. mysql数据库原理及应用实训报告_《数据库原理及应用》实验报告.doc
  6. 大神总结的图像处理学习路线
  7. 紧急求助,CSDN帮忙下载HP惠普280G1增霸卡7.0UEFI版硬盘保护卡还原卡驱动光盘
  8. 华成英-模拟电子技术P11 场效应管及其放大电路 笔记
  9. 发放2013年迅雷vip账号了~!
  10. Drool学习记录(二) Kie Session、Truth maintenance