Apple进军Windows?hoho。基于KHTML的Safari也进军Windows了,大家可以在这里下载。不过好像对中文支持的还不够好,速度还是不错的。
Category Archives: 技术
C++ GUI Programming with Qt 4可以在线浏览了
伟大的Google Book:
C++ GUI Programming with Qt 4
C++ GUI Programming with Qt 3
文泉驿矢量字体正黑体 – 0.2 (紫箫)发布
发布新闻
http://wenq.org/forum/viewtopic.php?p=2027
效果图
http://wenq.org/gallery/thumbnails.php?album=14
不过还没看到哪里可以下载。
如何自定义moc和uic生成的文件的扩展名 – cmake篇
cmake官方文档同样没有涉及,在邮件列表中讯问后,查看相应文件找到了解决方案。
针对QT4_WRAP_CPP和QT4_WRAP_UI还有资源文件:
cmake下的Modules/FindQt4.cmake文件中如下三行在起作用:
1 |
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/moc_${outfile}.cxx) |
1 |
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) |
1 |
SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/qrc_${outfilename}.cxx) |
针对QT4_AUTOMOC方式,需要修改这两行:
1 |
STRING(REGEX MATCHALL "#include +[^ ]+\.moc[">]" _match "${_contents}") |
1 |
STRING(REGEX MATCH "[^ <"]+\.moc" _current_MOC "${_current_MOC_INC}") |
需要把其中的.moc换成.myown什么的。当然QT4_AUTOMOC的方式就是需要在你的源代码最后加入一行include的,还要做一个修改:
1 |
#include "yourclass.moc" |
要改为:
1 |
#include "yourclass.myown" |
不过这一次看来cmake要强大好多呀,完全可以自定制。
Qt和Qtopia的中文邮件列表
鉴于i18n网站宕机很长一段时间了,原来的Qt中文邮件列表也因此一直不能使用。最近看到大家用Google Groups也越来越多,所以就创建了两个邮件列表供大家使用:
Qt中文邮件列表
Qtopia中文邮件列表
希望大家常来呀,hehe。
如何自定义moc和uic生成的文件的扩展名 – qmake篇
这些内容针对Qt 4,在官方文档中没有提及。
在.pro文件中加入下面两行:
1 |
QMAKE_EXT_CPP = .cxx .cppQMAKE_EXT_H = .hxx .h |
之后uic就可以生成.hxx结尾的头文件,moc就可以生成.cxx结尾的源文件了。
另外一个需要注意的是,在这个文档中提到了:
http://doc.trolltech.com/4.3/uic.html
“You must also remember to add ui_foo.h to your HEADERS (substitute your favorite name).”
在你改完.pro文件后,你需要把新的“ui_foo.hxx”添加到你的头文件中了。
注释:
2007-06-01 好像发现在Makefile中有关qmake_image_collection的后缀名称也跟着变化了。
Cool! KDE 4 on Qtopia Core
也许不久的将来我们就能看到嵌入式KDE 4了。因为Qt的跨平台支持,现在有爱好者正在Qtopia Core上跑kdelibs, kdebase, kdepimlibs等等。
大家可以看看这段视频:
KDE on Qtopia Core
Qt中浮点数转化字符串
今天鼓捣这个浮点数转化成字符串的问题,默认情况是使用科学计数法,不太好看。网上查了一下,有个std库的例子,用sstream和string的,不过我这里测试了一下,好像没有效果。
探索过程中,其实就是文档阅读和小代码尝试,发现了两条路,一条是:
1 2 3 4 5 6 7 8 9 10 11 |
double x = 12345678900000.0; QString s; QTextStream ts; ts.setString( &s ); ts.setRealNumberNotation( QTextStream::FixedNotation ); ts.setRealNumberPrecision( 2 ); ts << x; ts.flush(); |
另一条更简洁的路是:
1 2 3 |
double x = 12345678900000.0; QString s = QString::number( x, 'f', 2 ); |
不过这两种方式都限定了小数点后的精度。如果我想要0.0000001234的字符串“0.0000001234”的代码,还没有找到。
C++ GUI Programming with Qt 4中文版的消息
其实去年Qt 3中文版一书出版后,我已经就开始和国内的一些出版社联系Qt 4中文版的事情,但一直没有着落。今年过年前后有一个朋友帮忙,经过一些Email的联系,和电子工业出版社进行商讨,但鉴于译者稿酬较低(至少我这么认为)以及电子版图书的问题(我要求出版社在图书出版后一年半或者两年免费释放电子版图书供读者阅读,但他们拒绝了,他们还打算卖电子版呢),我没有接Qt 4中文版这本书。于是我的朋友开始和电子工业出版社联系翻译的具体事宜。我已经将Qt 3中文版的所有文档发给我的朋友了,对他的翻译也许会有些帮助。
今天得到这位朋友的消息,他们已经拿到翻译合同了,目前是基于Qt 4一书第一版中没有基本没有变动的章节进行翻译,几个月后交给出版社;等待Qt 4一书第二版的消息,拿到书籍或者电子档之后,他们会继续翻译变动以及新增的章节,尽量争取明年上半年最快的速度出版,我想这样对于国内的Qt爱好者应该是很不错的消息了。
当然之前我翻译过的一些章节的草稿,我最近会转发给我的朋友。如果有闲暇的时间,我也许会再初步翻译几个章节,这个还没有最终确定。
最后预祝我的朋友们翻译顺利,早日结束战斗!
C++ GUI Programming with Qt 4第二版的消息
大约年底交稿,明年年初出版。第二版将基于Qt 4.3,在第一版的基础上修订并且增加新的章节,例如有关Qt Style Sheets和QStyle、Qtopia、QtScript、GraphicsView等等。
很期待呀。