[ C++ GUI QT ] 學習筆記
據說課程設計要有界面,MFC看了一點點一直沒深入學習知道QT是上學期的事,前兩天不停 qmake -project qmakemake
也算對QT有點認識了...寫點小結
目前為止,接觸過的框架大概有
MFC,FLEX FRAMEWORK,JAVA(?JAVA應該不算框架.. = =!)
對于學過C的人來說,QT更容易理解:#include < QApplication >
#include < QLabel >
int main(int argc,char **argv){
QApplication app(argc,argv);
QLabel label("Hello QT!",0);
label.show();
//QT4以前的版本還要加一句 app.set....忘了,看官方的3.X版本文檔,一直編譯不過。。。 這句浪費不少時間. 016
return app.exec();
}看起來有些像JAVA。。
沒見到 winMain ?沒打錯,這個就是有窗口的QT程序
而MFC的作法就難看多了(隱藏了太多東西在背后,看起來就不舒服,對VC使用不多,也許這是個優點?)
消息機制的實現
MFC QT 都是用宏 AS3 JAVA內建事件機制
MFC的是一大堆的 MAP BEGINMAP...
QT的:QObject::connect(aButtonPointer,SIGNAL(clicked()),
otherThingPointer, SLOT(funcOfOtherThing())
);給我感覺是:QT比MFC優雅.(終于知道優雅是什么了.. )
[ 本帖最后由 iptton 于 2007-11-24 20:30 编辑 ] Qt的框架很像.net
程序的结构也一样 “而MFC的作法就難看多了(隱藏了太多東西在背后,看起來就不舒服,對VC使用不多,也許這是個優點?)”你没有深入去了解而已……
QT程序中的中文显示问题
#include < QTextCodec > //把尖括号内的空格去掉QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF8"));如果还是显示乱码,把UTF8换成源文件的编码就行了 GBK 等
Ubuntu+Eclipse+QT4.3.2
Ubuntu+GEdit+QT4.3.2
下测试..
而在KDE环境下的中文输入法问题...还在上网找解决方案..
不知后院有没有知道的..
[ 本帖最后由 iptton 于 2007-12-17 17:04 编辑 ] 4点几版的改动太大,不晓 QT开发的软件中的中文输入法(我用的是SCIM)问题怎么解决,LS知道吗? QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF8"));
这句再仔细看了看,注释掉也没有问题。。。而且名称是: setCodecForLocale
难道这句是解决输入法问题的关键? 用了QT Ecipse 插件....
不再敲 qmake make了..
只是在LINUX下的索引不知道为什么速度那么慢...
难道512内存都有罪...
下个非SUN版的JRE 回去看看能不能改观
[ 本帖最后由 iptton 于 2007-12-21 17:41 编辑 ] 宿舍里的SCIM和QT开发的软件没冲突,迟些把那个SCIM设置发上来...
UTF-8 与 UTF-8 without BOM
用NotePad++有这两种不同的编码方式前者编码的文件不能通过编译
eclipse中的UTF-8应该就是UTF-8 without BOM
而Windows下的 UTF8应该就是前者了。。
所以,如果用记事本打开(或者其它编辑工具)源文件保存为UTF8格式出现编译错误应该考虑换个工具了。。 原来个帖甘old 怎么我之前没看到这贴....
用make好呀... makefile规则还没学会多少。。
页:
[1]