本教程将详细讲解如何使用 Qt Creator 集成开发环境 (IDE) 开始使用 Qt 进行编程。本教程旨在作为温和的介绍,帮助初学者快速上手,而不会让他们感到害怕。
我们将首先创建一个新的基于 Qt 的项目,并修改生成的代码以显示一个非常简单的图形用户界面 (GUI)。一旦我们的基本应用程序项目到位并运行,我们将返回并修改它以做一些稍微有用的事情。
🧑 博主简介:现任阿里巴巴嵌入式技术专家,15年工作经验,深耕嵌入式+人工智能领域,精通嵌入式领域开发、技术管理、简历招聘面试。CSDN优质创作者,提供产品测评、学习辅导、简历面试辅导、毕设辅导、项目开发、C/C++/Java/Python/Linux/AI等方面的服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:
gylzbk
)
💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。
介绍
本教程将详细讲解如何使用 Qt Creator 集成开发环境 (IDE) 开始使用 Qt 进行编程。本教程旨在作为温和的介绍,帮助初学者快速上手,而不会让他们感到害怕。
我们将首先创建一个新的基于 Qt 的项目,并修改生成的代码以显示一个非常简单的图形用户界面 (GUI)。一旦我们的基本应用程序项目到位并运行,我们将返回并修改它以做一些稍微有用的事情。
我们将从简单的开始,随着您对所使用的小部件和其他设施越来越熟悉,逐渐增加其复杂性。
那么,让我们开始吧!
开始之前:下载并安装 Qt 和 Qt Creator
获取一份 Qt SDK 副本,或者如果您使用的是 Linux,则获取系统提供的 Qt 副本和编译器。
如果您刚刚开始,您可能需要考虑开源 LGPL 版本。
您可以在qt.io网站上找到开源下载。
对于商业用途,请考虑获取 Qt 商业许可证。
基本步骤:创建新项目
让我们尝试制作一个简单的应用程序,它有一个显示 QLabel 和 QLineEdit 的窗口。为此,请按照以下简单步骤操作:
启动 Qt Creator:
转到_文件_
—_新建文件_
_或项目_菜单项,选择 Qt Gui 应用程序并为其选择一个名称:
输入项目名称,例如“qt-tutorial-01
”。
选择一个或多个 Qt 版本作为目标。桌面版本适用于本教程。
选择基类为 QWidget
(保留类名作为默认的 Widget)。
检查摘要中的项目创建选项,然后单击“Finish
”。
以上将创建一个由四个文件组成的简单项目:
- main.cpp
- widget.h
- widget.cpp
- widget.ui
开始实践:编辑项目文件
我们将首先编辑 widget.ui 文件,如下所示:
单击它,设计器将切换到设计模式并打开文件。您应该看到一个空白的小部件。现在执行以下操作:
使用左侧的工具箱,将标签拖到小部件表单上
对 Line Edit 执行类似操作,将其放置在标签的右侧。具体位置并不重要。
单击小部件背景,以便取消选择两个新小部件(标签和行编辑)。
在顶部的工具栏中,单击“Lay out Horizontally
”按钮或按 Ctrl
-H
将所有小部件添加到水平布局中。如果父小部件的大小发生变化,布局将负责调整小部件的大小。
双击标签,它将切换到编辑模式。将文本更改为“My name is:
”
按 Ctrl
-S
保存表单。
单击 Creator 左侧面板中的“编辑模式”按钮切换回文本编辑器。此时您可能会看到 UI 文件的原始 xml 内容。只需关闭它,我们现在就完成了。
现在打开 widget.h 文件并编辑它,使其看起来像这样:
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
namespace Ui {
class Widget;
}
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
void setName(const QString &name);
QString name() const;
private:
Ui::Widget *ui;
};
#endif // WIDGET_H
现在编辑相应的.cpp 文件,使其看起来像这样:
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
}
Widget::~Widget()
{
delete ui;
}
void Widget::setName(const QString &name)
{
ui->lineEdit->setText(name);
}
QString Widget::name() const
{
return ui->lineEdit->text();
}
最后将 main.cpp 编辑如下:
#include <QApplication>
#include "widget.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
w.setName("Slim Shady");
w.show();
return a.exec();
}
启动并运行:构建并运行应用程序
现在构建(左下角的锤子图标或默认快捷键 Ctrl
-Shift
-B
)并运行应用程序(左下角的绿色“play
”图标)。构建过程中,您将看到底部的“Compile Output
”面板中出现一些编译器消息。
应用程序执行时的样子如下:
如您所见,main()
函数非常简单。我们所做的就是创建一个QApplication
,然后创建一个 Widget(这是我们在设计器中布局的自定义小部件,并使用name()
和setName()
函数在代码中添加了自定义行为)。
然后我们只需在小部件上调用自定义的setName()
函数即可。这反过来会获取一个指向我们放置在表单上的QLineEdit
小部件的指针,并调用QLineEdit
的setText()
函数。
最后,我们通过调用a.exec()
来显示小部件并进入事件循环。
一旦您了解了这个简单的应用程序如何工作,那么您就可以开始添加一些花哨的东西,如信号/插槽连接。