C++界面库的抉择

C++界面库的抉择

C++的界面库经过几天来的搜索,总结了下面几种的优缺点

1. MFC

   优点:VS2008以及VS2010的扩展确实很强大,特别是原生的窗口运行时停靠以及PropertyGrid确实很强大

   缺点:默认字体很模糊,无论你对MFC多了解,C++多熟悉,每次写代码时依然要重新熟悉代码,更不用提分析别人写的MFC代码,一个字:乱。

2. WTL

   优点:Windows下有个最好的例子:Google Chrome

   缺点:缺乏设计器,文档例子很少

3. wxWidgets

   优点:虚幻3编辑器在用(不是广告),wxAUI的布局设计器很方便,Windows原生界面很舒服,各种功能封装都很到位。

   缺点:布局没有类似GTK+的Fixed绝对坐标方式(Windows SDK默认的左上角像素定位方式),在某些界面显得设计麻烦。 动态链接库多的吓人,工程过于臃肿。

4. Qt, GTK+

    据说Windows下不是很好用。

5. DirectUI

    有很多个人封装类似功能的库。界面,代码分离, 但99%都是收费

6. C# Windows Form

    这是很好的选择,语言方面可以用C++/CLI 免得转换语言

   自由停靠功能可以使用WeiFenLuo.winFormsUI.Docking 非常简单

7. WPF

   有童鞋已经使用MFC/C++通过加载XML显示界面,不过通过资料显示,WPF的控件很少,甚至连原生的PropertyGrid都没有,设计器倒是很华丽

 

总结:界面库的选择最重要的一点就是看有没有很好的设计器,这个是高效开发的重中之重。我尊重MFC,敬仰MFC,它作为C++的框架库来说很不错,但是对于界面设计还是过老了。我们开发的是产品,出的是程序,而不是研究MFC,怎样用好MFC。

你可能感兴趣的:(C++界面库的抉择)