Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1646529
  • 博文数量: 311
  • 博客积分: 7778
  • 博客等级: 少将
  • 技术积分: 4186
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-09 19:59
个人简介

蓝点工坊(http://www.bluedrum.cn) 创始人,App和嵌入式产品开发。同时也做相应培训和外包工作。 详细介绍 http://pan.baidu.com/s/1y2g88

文章存档

2012年(3)

2011年(115)

2010年(170)

2009年(23)

分类: 嵌入式

2009-11-25 17:42:54

   
  在嵌入式开发的教学中,一般都是采用Qte 2.2 作为教学本台。但是因为版本太老。使用起来并不太方便。因此有时候会直接使用桌面版的qt 3.1来讲解平台。但是两种版本有细微的差别。学习的人非常容易搞混。特别是Qtopia 的x11版与Qt 3.1 大家用的都是g++作编译器。
  因此有时会刻意只讲Qte 2.2 以免学员产生混乱,但有的情况非讲桌面QT不可。因此这里列一个对比表,以免学员搞混(实际上,还真的很多搞混,要不断强调才会分清楚)。

  1.所用开发工具版本
      qte 2.3 有
               designer (ver 1.1) ,
               uic (user interface complier)
               qvfb(X11 FrameBuffer模拟器),
               tmake (ver 1.11) 模板/Makefile 生成器
               progen QT项目文件,生成器.
            一般x11版安装在 /x86-qtopia/qt/bin  下面
      qt 3.3 是Redhat 默认版本。
             安装在/usr/lib/qt-3.3 目录下面
             designer (
       
             
  2.QT项目需要文件
一个QT项目通常需要
qtproject.pro (QT的项目文件)
Makefile(由pro生成)
main.cpp (主程序)
XXXX.ui (界面描述文件)
XXXX.h (由ui生成头文件)
XXXX.cpp (由ui生成源码文件)
  也可以手工加入 *.h/*.cpp
(以下假设项目叫qt_calc)
0.运行qte 2.2 进先执行 . set-env
2.1.生成project 文件
  qte2.2 (qt desinger 1.1 ):  用 progen > qt_calc.pro (它会扫描当前目录,把源码和头文件加入)
 
  qt 3.1 (qt designer 3.3.6): 有两种方法,1.在qt designer 新建一个C++工程.(推荐)
                   2. 执行命令 qmake -o project

2.2   由pro生成Makefile
 
  qte2.2 执行命令   tmake -o Makefile qt_calc.pro
      其中LINK = gcc 要改成 LINK = g++
   qt 3.1 执行命令  qmake -o Makefile qt_calc.pro

2.3.由uic 生成源代码,两者命令一样
    uic -o qt_calc.h qt_calc.ui
    uic -o qt_calc.cpp -i qt_calc.h qt_calc.ui
  但是qt 3.1在makefile 中会自动这两句,并且把文件放入 .ui/下面。所以无需手工创建

2.4. 主程序 main.cpp
    qte 2.2 要手工写
    qt 3.1 可由designer 自动生成
 
2.5.编译都 是Make
   make

2.6.designer 中singal与slot的联络机制
    qte 2.2 是由MOUSE拖动完成
     qt 3.1 是选择下拉列表,或在对象窗口的singal 而操作

2.7.  slot 代码保护
  qte 2.2 只能手工增加子类继承来进行保护
  qt3.1  会将slot 代码单独列在同名的点h中,如 calcform.ui 会生成 calcform.ui.h.这文件
  代码不会被 uic冲掉,并且可以在designer 中直接修改。

以下用表格来总结一下

 

 qte 2.2   

qt 3.1   

Qt4

 生成project 文件    

progen > qt_calc.pro

qmake -o qt_calc.pro

qmake –project qt_calc.pro

由项目文件生成Makefile

tmake -o Makefile qt_calc.pro

qmake -o Makefile qt_calc.pro

qmake -makefile

ui文件生成C++代码

uic -o qt_calc.h qt_calc.ui

uic -o qt_calc.cpp -i qt_calc.h qt_calc.ui

 

主程序 main.cpp

手工生成

Qt Designer 生成

QtCreator自动生成

编译

make

make

make

designer singalslot的联络机制

是由MOUSE拖动完成

选择下拉列表,或在对象窗口的singal 而操作

 

Slot方法代码保护

手工增加子类继承来进行保护

会将slot 代码单独列在同名的点h中,如 calcform.ui 会生成 calcform.ui.h.这文件
 
代码不会被 uic冲掉,并且可以在designer 中直接修改。

在项目目录下,隐藏目录.ui建立 ui_xxxx.h文件,所有slot代码写在隐藏文件后

 
阅读(1913) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~