$qmake -project
$qmake a.pro
$make (main.cpp)
$./main
安装好Qt后可以在Shell中输入
第一步 $designer #调出设计器
第二步 进行窗口设计工作
窗体为HelloDialog保存窗体为Hello目录下hellodialog.ui。
第三步 源程序对ui的调用
在Hello目录下新建一main.cpp文件,
#include <QApplication>
#include <QDialog>
#include "ui_hellodialog.h"
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
Ui::HelloDialog ui;
QDialog *dialog=new QDialog;
ui.setupUi(dialog);
dialog->show();
return app.exec();
}
第四步 $qmake -project #生成pro文件
shell进入到hello目录,
$qmake -project #生成hello.pro
第五步 $qmake -hello.pro生成makefile文件
$qmake -hello.pro#生成makefile文件
qmake工具非常智能,可以自动检测到用户界面文件hellodialog.ui并且可以生成适当的makefile规则来调用Qt的用户界面编译器(user interface compiler,uic)。
uic工具会将hellodialog.ui文件转换成C++并且将转换结果存储在ui_hellodialog.h文件中。
生成的ui_hellodialog.h文件中包含了类Ui::HelloDialog的定义,该类是一个与hellodialog.ui等价的c++文件。这个类声明了一些成员变量,存储着窗体中的子窗口部件和布局,以及用于初始化窗体的setupUi( )函数。生成的类如下所示
class Ui::HelloDialog
{
public:
QLabel *label;
QLineEdit *lineEdit;
QSpacerItem* spacerItem;
QPushButton *okButton;
....
void setupUi(QWidget *widget){
...
}
};
生成的类没有任何基类,main中调用该窗体时,可以创建一个QDialog对象,然后把它传递给setupUi()函数。
第六步 $make #在当前目录下生成hello程序
第七步 $./hello #运行hello程序
$qtdemo查看qt的演示程序
$assistant打开qt的文档
$make编译qt,生成qt库,同时编译所有的演示程序、示例程序和工具软件,某些系统中成为gmake命令。
内置的qt编译工具为qmake。开源的IDE软件有KDevelop和QDevelop,我这里装的是(QDevelop),他们都是用Qt编写的,并且为Qt开发提供了良好的支持。
qmake可以使用与平台无关的.pro文件生成与平台相关的makefile文件。
工程文件三种类型:app(单独的应用程序)/lib(静态和动态库)/subdirs(递归编译),工程文件类型使用TEMPLATE变量指定
TEMPLATE=lib
subdirs模板可以用来编译子目录里的目标文件。除TEMPLATE=subdirs外,还需指定SUBDIRS变量。在每个子目录中,qmake会搜徐以目录名命名的.pro文件,并且会编译该工程。
要生成工程文件hello.pro的makefile,可以输入qmake hello.pro,
之后可以调用make或nmake编译工程。
也可以使用-project参数在当前目录下使用qmake生成.pro文件,
e.g. qmake -project
这种模式下,qmake将搜索当前目录下已知扩展名(.h.、.cpp、.ui,等等)的文件,生成一个列举这些文件的.pro文件。