Qt中用纯代码方式编写程序

使用下面两种方式来编写程序:

(1)在 Qt Creator 中使用纯代码编写Hello Qt! 程序并编译运行。
(2)使用普通文本编辑器编写Hello Qt!程序,并在命令行中编译运行。
 
方式一:在 Qt Creator 中用纯代码编写程序

第一步,新建空项目。打开Qt Creator,并新建项目,选择“其他项目”中的“Empty qmake Project”。然后将项目命名为helloworld并设置路径,例如E:\app\src\02\2-2。完成后,双击helloworld.pro文件,添加如下一行代码:

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

第二步,往项目中添加 main.cpp 文件。在项目文件列表中的项目文件夹 helloworld 上右击,选择“添加新文件”一项,然后选择 C++ Source  File ,名称设置为 main.cpp ,路径就是默认的项目目录,后面的选项保持默认即可。
第三步,编写源代码。向新建的 main.cpp 文件中添加如下代码:
#include<QApplication>
#include<QDialog>
#include<QLabel>
int main(int argc,char *argv[])
{
    QApplication app(argc,argv);
    QDialog w;
    QLabel label(&w);
    label.setText("Hello Qt!");
    w.show();
    return app.exec();
}

 

3 行是头文件包含。在 Qt 中每一个类都有一个与其同名的头文件,因为后面用到了 QApplication QDialog QLabel 3 个类,所以这里要包含这些类的定义。
4 行就是在 C++ 中最常见到的 main() 函数,它有两个参数,用来接收命令行参数。
在第 6 行新建了 QApplication 类对象,用于管理应用程序的资源,任何一个 Qt GUI 程序都要有一个 QApplication 对象。因为 Qt 程序可以接收命令行参数,所以它需要 argc argv 两个参数。
7 行新建了一个 QDialog 对象, QDialog 类用来实现一个对话框界面。
8 行新建了一个 QLabel 对象,并将 QDialog 对象作为参数,表明了对话框是它的父窗口,也就是说这个标签放在对话框窗口中。
9 行给标签设置要显示的字符。
10 行让对话框显示出来。在默认情况下,新建的可视部件对象都是不可见的,要使用 show() 函数让它们显示出来。
11 行让 QApplication 对象进入事件循环,这样当 Qt 应用程序在运行时便可以接收产生的事件,例如单击和键盘按下等事件。 
 
第四步,编译运行。再看运行的程序,发现窗口太小,下面继续更改代码。

 

 

第五步,设置窗口大小。

#include<QApplication>
#include<QDialog>
#include<QLabel>
int main(int argc,char *argv[])
{
    QApplication app(argc,argv);
    QDialog w;
    w.resize(400,300);
    QLabel label(&w);
    label.move(120,120);
    label.setText(QObject::tr("Hello Qt!"));
    w.show();
    return app.exec();
}

如果想改变对话框的大小,可以使用 QDialog 类中的函数来实现。
在第 7 行代码下面另起一行,输入“ w.” (注: w 后面输入一个“ .” ),这时会弹出 QDialog 类中所有成员的列表,可以使用键盘的向下方向键↓来浏览列表,根据字面意思,这里选定了 resize() 函数。这时按下 Enter 键,代码便自动补全,并且显示出了 resize() 函数的原型。它有两个重载形式,用键盘方向键来查看另外的形式,这里的“ int w int h” 应该就是宽和高了。
所以写出了第 8 行代码,设置对话框宽为 400 ,高为 300 (它们的单位是像素)。还要说明的是,编写代码时所有的符号都要用输入法中的英文半角(当然,中文字符串中的除外)。然后在第 10 行代码中设置了 label 在对话框中的位置,默认的,对话框的左上角是 (0, 0) 点。
11 行添加的 QObject ::tr() 函数可以实现多语言支持,一般建议程序中所有要显示到界面上的字符串都使用 tr() 函数括起来。 
 
方式二:使用普通文本编辑器编写 helloworld 程序
前面在 Qt Creator 中使用纯代码实现了 helloworld 程序。下面不使用 Qt Creator ,而是在其他的编辑器(如 Windows 的记事本)中编写源码,然后再到命令行去编译运行该程序。
第一步,新建工程目录。在 Qt 的安装目录(例如: C:\Qt )中,新建文件夹 helloworld ,然后在其中新建文本文档,将 Qt Creator main.cpp 文件中的所有内容复制过来,并将文件另存为 main.cpp (在保存时要将编码选择为 UTF-8 ,否则中文无法显示)。

第二步,使用命令编译程序。打开开始菜单中Qt安装目录下的命令提示符程序Qt 5.6 for Desktop (MinGW 4.9.2 32 bit)。这里已经配置好了编译环境。

现在的默认路径在 C:\Qt\Qt5.6.1\5.6\mingw49_32
输入命令: cd C:\Qt\helloworld 跳转到新建的 helloworld 目录中。
然后再输入 qmake –project” 命令来生成 pro 工程文件,这时可以看到在 helloworld 目录中已经有了 helloworld.pro 文件了。
下面使用记事本打开该文件,然后在最后面添加如下一行代码:

    greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

下面接着输入“ qmake 命令来生成用于编译的 Makefile文件。这时在helloworld目录中出现了Makefile文件和debug目录与release目录,当然这两个目录现在是空的。接下来输入 mingw32-make” 命令来编译程序,编译完成后会在release目录中出现 helloworld.exe文件。

编译说明

   上面使用的qmakeQt提供的一个编译工具,它可以生成与平台无关的.pro文件,然后利用该文件生成与平台相关的Makefile文件。Makefile文件中包含了要创建的目标文件或可执行文件、创建目标文件所依赖的文件和创建每个目标文件时需要运行的命令等信息。最后使用mingw32-make命令来完成自动编译,通过读入Makefile文件的内容来执行编译工作。使用mingw32-make命令时会为每一个源文件生成一个对应的.o目标文件,最后将这些目标文件进行链接来生成最终的可执行文件。

第三步,运行程序。在命令行接着输入cd release命令,跳转到release目录下,然后再输入“helloworld.exe”,按下回车键,就会运行helloworld程序了。

 

 

 

 

 

 

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值