工大后院

 找回密码
 加入后院

扫一扫,访问微社区

QQ登录

只需一步,快速开始

搜索
查看: 2877|回复: 12

[ C++ GUI QT ] 學習筆記

[复制链接]
发表于 2007-11-24 19:13 | 显示全部楼层 |阅读模式
據說課程設計要有界面,MFC看了一點點一直沒深入學習
知道QT是上學期的事,前兩天不停 qmake -project   qmake  make
也算對QT有點認識了...寫點小結

目前為止,接觸過的框架大概有
MFC,FLEX FRAMEWORK,JAVA(?JAVA應該不算框架.. = =!)

對于學過C的人來說,QT更容易理解:
  1. #include < QApplication >
  2. #include < QLabel >
  3. int main(int argc,char **argv){
  4.     QApplication app(argc,argv);
  5.     QLabel label("Hello QT!",0);
  6.     label.show();
  7.     //QT4以前的版本還要加一句 app.set....忘了,看官方的3.X版本文檔,一直編譯不過。。。 這句浪費不少時間. 016
  8.     return app.exec();
  9. }
复制代码
看起來有些像JAVA。。
沒見到 winMain ?沒打錯,這個就是有窗口的QT程序
而MFC的作法就難看多了(隱藏了太多東西在背后,看起來就不舒服,對VC使用不多,也許這是個優點?)

消息機制的實現
MFC QT 都是用宏 AS3 JAVA內建事件機制
MFC的是一大堆的 MAP BEGINMAP...
QT的:
  1.   QObject::connect(  aButtonPointer,SIGNAL(clicked()),
  2.                      otherThingPointer, SLOT(funcOfOtherThing())
  3.                    );
复制代码
給我感覺是:QT比MFC優雅.(終于知道優雅是什么了.. )

[ 本帖最后由 iptton 于 2007-11-24 20:30 编辑 ]
发表于 2007-12-3 17:30 | 显示全部楼层
Qt的框架很像.net
程序的结构也一样
回复

使用道具 举报

发表于 2007-12-9 10:08 | 显示全部楼层
“而MFC的作法就難看多了(隱藏了太多東西在背后,看起來就不舒服,對VC使用不多,也許這是個優點?)”你没有深入去了解而已……
回复

使用道具 举报

 楼主| 发表于 2007-12-17 17:01 | 显示全部楼层

QT程序中的中文显示问题

  1.     #include < QTextCodec > //把尖括号内的空格去掉

  2.     QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF8"));
  3.     QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF8"));
复制代码
如果还是显示乱码,把UTF8换成源文件的编码就行了 GBK 等

Ubuntu+Eclipse+QT4.3.2
Ubuntu+GEdit+QT4.3.2
下测试..

而在KDE环境下的中文输入法问题...还在上网找解决方案..
不知后院有没有知道的..

[ 本帖最后由 iptton 于 2007-12-17 17:04 编辑 ]
回复

使用道具 举报

发表于 2007-12-17 17:20 | 显示全部楼层
4点几版的改动太大,不晓
回复

使用道具 举报

 楼主| 发表于 2007-12-17 17:26 | 显示全部楼层
QT开发的软件中的中文输入法(我用的是SCIM)问题怎么解决,LS知道吗?
回复

使用道具 举报

 楼主| 发表于 2007-12-18 16:38 | 显示全部楼层
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF8"));

这句再仔细看了看,注释掉也没有问题。。。而且名称是: setCodecForLocale
难道这句是解决输入法问题的关键?
回复

使用道具 举报

 楼主| 发表于 2007-12-21 17:25 | 显示全部楼层
用了QT Ecipse 插件....
不再敲 qmake make了..
只是在LINUX下的索引不知道为什么速度那么慢...
难道512内存都有罪...

下个非SUN版的JRE 回去看看能不能改观

[ 本帖最后由 iptton 于 2007-12-21 17:41 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2007-12-21 17:26 | 显示全部楼层
宿舍里的SCIM和QT开发的软件没冲突,迟些把那个SCIM设置发上来...
回复

使用道具 举报

 楼主| 发表于 2008-4-13 22:37 | 显示全部楼层

UTF-8 与 UTF-8 without BOM

用NotePad++有这两种不同的编码方式
前者编码的文件不能通过编译
eclipse中的UTF-8应该就是UTF-8 without BOM
而Windows下的 UTF8应该就是前者了。。
所以,如果用记事本打开(或者其它编辑工具)源文件保存为UTF8格式出现编译错误应该考虑换个工具了。。
回复

使用道具 举报

发表于 2008-4-13 22:55 | 显示全部楼层
原来个帖甘old
回复

使用道具 举报

发表于 2008-4-13 23:37 | 显示全部楼层
怎么我之前没看到这贴....

用make好呀...
回复

使用道具 举报

 楼主| 发表于 2008-4-14 22:03 | 显示全部楼层
makefile规则还没学会多少。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入后院

本版积分规则

QQ|Archiver|手机版|小黑屋|广告业务Q|工大后院 ( 粤ICP备10013660号 )

GMT+8, 2024-6-6 14:47

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表