主题 : QT Designer 4 应用程序开发流程(新手入门级)(帮你节省很多时间)有图有真相 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 58622
精华: 0
发帖: 22
金钱: 110 两
威望: 22 点
贡献值: 0 点
综合积分: 44 分
注册时间: 2011-11-10
最后登录: 2014-09-16
楼主  发表于: 2012-03-08 14:49

 QT Designer 4 应用程序开发流程(新手入门级)(帮你节省很多时间)有图有真相

       最近开始学QT编程,刚开始毫无头绪,坛里有个帖子讲的是QT开发流程的入门贴。其中只是说了几个步骤,记起来也比较麻烦。由于我水平不够,所以果断放弃,开始自学。
       对于我这种没有任何C++基础的苦B。为了能够快速入门,所以直接看了孙鑫C++教程的第二课。大概了解了下C++类的一些概念。然后在看了几本QT的教材,在这里推荐入门级教材《24小时学通qt编程》。中级教材《C++_GUI_Qt_4编程(第二版)》。然后看《Linux窗口程序设计—Qt4精彩实例分析》。最后看《QT高级编程》。如果你是一个没有任何编程基础的人,我的建议是先从《24小时学通qt编程》里面的例程开始编写。通读《24小时学通qt编程》后,这时候在去看《C++_GUI_Qt_4编程(第二版)》并且开始涉及运用QT Designer 4.





说明:我在配置虚拟机安装fedora9的时候,已经选择了QT3和QT4开发环境以及库。所以我会有2个qmake。这里面qmake 是qt3的。qmake-qt4是qt4的。注意区分。想查看自己的qmake版本。
输入qmake -v即可。(出现错误的时候注意查看系统环境变量)Linux内核版本如图。以后的示例我都会采用qmake-qt4命令进行。











如果你对C++了如指掌,并且想使用QT Designer 4进行开发的时候。请往下看。
xxxx.cpp。其中xxxx为你自己起的文件名。
首先你要知道什么是qmake。其实qmake说的很简单的话,他就是一个工具,一个可以自动生成Makefile文件的工具。
无论你在做什么项目的时候,都要先建立一个工程。那么一个QT的工程里面都包含什么文件呢?他们的具体作用都是什么?
第一步:首先启动QT Designer 4,然后设计一个简单的ui界面。保存为xxxx.ui。然后编写一个main.cpp,创建一个xxxx.cpp和xxxx.h文件。
然后输入qmake-qt4 -project。生成xxx.pro文件。



其中main.cpp具体含义和代码翻书可很明白的学会。xxxx.cpp和xxxx.h这两个文件是你为了实现你的工程某些特定功能而必须要编写的源文件。
当然,我们这里面作为一个简单的例子,里面可以为空。当你运行完qmake-qt4 -project,命令后,会自动生成一个xxxx.pro文件。我们可以看下
这个文件里面的内容。后面几行很明显的表示了,这个工程文件里面包含了main.cpp  xxxx.h  xxxx.cpp  xxxx.ui。


第二步:完成工程文件后,接下来我们需要生成Makefile文件了。输入qmake-qt4或者qmake-qt4 xxxx.pro。生成makefile文件。



第三步:直接输入make编译即可。生成可执行文件。同时会生成一个名字为ui_xxxx.h的头文件。
生成的这个头文件是根据你的xxxx.ui文件生成的。它里面存放着你ui界面各个部件的初始化布局以及窗口初始化函数。



用QT Designer 4实现一个简单的可执行QT程序。三步
1.创建工程所需源文件,创建工程文件
2.创建Makefile文件
3.make

当你需要编辑xxxx.h文件的时候,要在前面加上#include "ui_xxxx.h" 
当你需要编辑xxxx.cpp文件的时候,要在前面加上#include "xxxx.h"
main.cpp主函数里面需要添加#include "xxxx.h"
比如在编写lcdnumber.h文件的时候,我需要添加#include "ui_lcdnumber.h"。编写lcdnumber.cpp的时候要添加#include "lcdnumber.h"。
main.cpp里面添加#include "lcdnumber.h"。这种关系不要搞混了。然后重新输入make即可。

以上就是在linux 虚拟机上创建QT应用程序的过程。由于本人学习QT不到1周,其中有什么错误,欢迎指正。


原创~~~~~~~~~嘎嘎
[ 此帖被czh762217在2012-03-08 14:55重新编辑 ]
级别: 新手上路
UID: 58622
精华: 0
发帖: 22
金钱: 110 两
威望: 22 点
贡献值: 0 点
综合积分: 44 分
注册时间: 2011-11-10
最后登录: 2014-09-16
1楼  发表于: 2012-03-08 14:56
自己的沙发自己坐吧
畅游在知识的海洋...
级别: 论坛版主
UID: 33629
精华: 4
发帖: 554
金钱: 3075 两
威望: 615 点
贡献值: 5 点
综合积分: 1188 分
注册时间: 2010-12-03
最后登录: 2015-09-22
2楼  发表于: 2012-03-08 16:18
大哥,可直接用集成开发环境
好好学习,天天鲁管
级别: 新手上路
UID: 91672
精华: 0
发帖: 14
金钱: 75 两
威望: 15 点
贡献值: 0 点
综合积分: 28 分
注册时间: 2013-05-14
最后登录: 2013-11-11
3楼  发表于: 2013-06-14 16:20
谢谢......................
级别: 新手上路
UID: 104812
精华: 0
发帖: 12
金钱: 65 两
威望: 13 点
贡献值: 0 点
综合积分: 24 分
注册时间: 2014-06-05
最后登录: 2014-10-13
4楼  发表于: 2014-08-11 14:39
好贴