Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / Qt在Ubuntu下开发

安装好Qt后可以在Shell中输入第一步 $designer    #调出设计器第二步 进行窗口设计工作窗体为HelloDialog保存窗体为Hello目录下hellodialog.ui。第三步 源程序对ui的调用在Hello目录下新建一main.cpp文件,
  1. #include <QApplication>   
  2. #include <QDialog>   
  3.   
  4. #include "ui_hellodialog.h"   
  5.   
  6. int main(int argc,char *argv[])  
  7. {  
  8.     QApplication app(argc,argv);  
  9.       
  10.     Ui::HelloDialog ui;  
  11.     QDialog *dialog=new QDialog;  
  12.     ui.setupUi(dialog);  
  13.     dialog->show();  
  14.     
  15.     return app.exec();  
  16. }  
第四步 $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++文件。这个类声明了一些成员变量,存储着窗体中的子窗口部件和布局,www.linuxidc.com以及用于初始化窗体的setupUi( )函数。生成的类如下所示
  1. class Ui::HelloDialog  
  2. {  
  3.  public:  
  4.     QLabel *label;  
  5.     QLineEdit *lineEdit;  
  6.     QSpacerItem* spacerItem;  
  7.     QPushButton *okButton;  
  8.     ....  
  9.     void setupUi(QWidget *widget){  
  10.     ...  
  11.     }  
  12. };  
生成的类没有任何基类,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=libsubdirs模板可以用来编译子目录里的目标文件。除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文件。