在知道Qt之前,所知道的GUI库就是MFC了, 然后还偶尔听说过GTK, GTK+之类的, 这些库都有或多或少的缺点。 后来在一次搜索中发现了还有一种GUI库叫Qt,好像它是集所有最好的特点于一身的库,当时对它的描述记得很深刻的就是"艺术级的工业应用",虽然目前我读起来还是有点拗口,但看了它做出来的程序截图,我被深深的折服了。但可惜的是当时的工作环境让我对Qt的学习只是时断时续的,没有一个系统的学习,现在打算将整个Qt系统的学习一次,主要的参考资料是《C++ GUI Qt 4编程》(第二版)这本书。 可能会有很多内容借鉴书上,但这仅仅是让自己的记忆更深刻一点。
尽管现在Qt己经被Nokia收购了,但大家要记得trolltech这个名字, 它的中文译名是奇趣科技。 下面介绍的两个人也要记住,因为是他们当初的执着狂热和无私贡献才有了今天好用的Qt, 他们是:Haavard Nord (奇趣科技的CEO) 和 Eirik Chambe-Eng(奇趣科技的总裁)。 他们两个都毕业于挪威科技学院。
Haavard在1988年受一家瑞典公司的委托,开始开发一套C++的GUI框架。1990年Haavard和Eirik因为需要开发一个跨平台的C++数据库应用程序而在一起工作。 (想想吧,那时候的中国还在命令行下Happy着,差距真的不是一点点。) 也就在那个夏天, Haavard说:“我们需要一个面向对象的显示系统”。Qt的最初想法就在这个时候渐渐的形成了。
1991年,Haavard和Eirik开始一起合作设计,Eirik提出了“信号和槽”的设想,Haavard随后实现了这一想法,到1993年, Haavard和Eirik己经基本实现了一套完整的图形内核程序。他们开始期望着能够进军商业领域。
也许一切的创业是不可能顺顺利利的,1994年他们一事无成,不过他们都有一个好老婆,默黙的支持他们的工作(所以程序员创业,老婆一定要找好啊!)。
为什么是Qt? 为什么不是Rt, 或He? 其实上原因再简单不过了,仅仅因为字母Q在Haavard的Emacs字体中非常漂亮, 后面的字母t意思是工具包(toolkit)。很有点意思吧。
1995年4月, Metis公司和Haavard签订了第一分基于Qt进行软件开发的合同。
1995年5月20日, Qt 0.9.0被上传到了sunsite.unc.edu上,6天后在comp.os.linux.announce上发布。从第一天开始,Qt就提供了两种软件许可协议: 用于商业开发所需的商业许可;用于自由软件开发的许可(GPL),需要开放源代码。不过目前己经变成了(LGPL)了,不需开放源代码了,比商业版差一点点了。
1996年5月底,发布Qt 0.97版
1996年9月24日, 发布Qt 1.0版
1996年年底,己经到了Qt1.1版
。。。 。。。
到2005年发布Qt 4.0时, 己经有大约500个类和9000多个函数了。同年在北京设立了一家办事处。
2008年1月, Nokia收购了奇趣,至此,Qt改姓诺了,不过相信,在Nokia的大力推动下,Qt一定会发展的更好更为迅速。