1 创建项目:New Project

2 选择模板:应用程序>>Qt Widgets Application>>选择

3 项目位置:设置项目名称>>选择项目位置>>下一步

4 构建套件:直接下一步

5 详情:在基类中有三种类型。很显然MainWindow是最大的一个,那么不管什么程序,直接选择MainWindow就好了,没必要在用什么Widget 或者 Dialog当基类。

6 汇总:单击完成

这样就创建了一个名为 Sample_Hello_World 的项目了。项目创建好了之后,软件会自动生成必要的一些代码。

在左侧的项目列表中有四个文件:mainwindow.h/main.cpp/mainwindow.cpp/mainwindow.ui

mainwindow.h内容如下:

 1 #ifndef MAINWINDOW_H2 #define MAINWINDOW_H3 4 #include <QMainWindow>5 6 namespace Ui {7 class MainWindow;8 }9
10 class MainWindow : public QMainWindow
11 {
12     Q_OBJECT
13
14 public:
15     explicit MainWindow(QWidget *parent = 0);
16     ~MainWindow();
17
18 private:
19     Ui::MainWindow *ui;
20 };
21
22 #endif // MAINWINDOW_H

使用时需要在public和private中间添加provate slots类成员函数:

1 private slots:
2     // ...

main.cpp内容如下:

 1 #include "mainwindow.h"2 #include <QApplication>3 4 int main(int argc, char *argv[])5 {6     QApplication a(argc, argv);7     MainWindow w;8     w.show();9
10     return a.exec();
11 }

第1和第2行是头文件包含,其中QApplication是包含了类Application定义的头文件。相应的有QWidget、QDialog等头文件。

第6行创建了一个QApplication对象,第7行新建了一个主窗口(MainWindow)部件“w”,第8行调用内建函数显示窗口部件。而第10行则相当于Windows API中的消息循环,用于处理窗口中的“消息”与“动作”。

mainwindow.cpp的内容如下:

 1 #include "mainwindow.h"2 #include "ui_mainwindow.h"3 4 MainWindow::MainWindow(QWidget *parent) :5     QMainWindow(parent),6     ui(new Ui::MainWindow)7 {8     ui->setupUi(this);9 }
10
11 MainWindow::~MainWindow()
12 {
13     delete ui;
14 }

Qt中的“信号(SIGNAL)”和“槽(SLOT)”机制主要在这部分实现。槽函数需要在mainwindow.h中的private slots中进行函数原型说明,而信号和槽的连接放在第8行的下面。而槽函数的实现即函数体,则是放在第14行后面,即析构函数的后面。

mainwindow.ui是一个图形设计界面:

你可以从左侧拉入一些空间和部件放在窗口中,在右侧设置相应的属性。然后通过将部件与函数连接,实现信号与槽的连接。

可以直接单击界面右下角绿色三角形执行按钮,软件会编译运行当前的源程序。

下面是如何简单的添加一个退出按键,并与相应的函数连接。

首先在UI设计窗口中的左侧Buttom>>Push Buttom拉入主窗口,在右侧的属性栏中更改部件名称为“PushButtom_Quit”。可以适当的更改按键的大小和标签字体的样式与大小。部件的名称就是调用部件的接口。

接下来要做的就是将按键与函数连接起来。

在mainwindow.cpp中修改如下内容:

 1 #include "mainwindow.h"2 #include "ui_mainwindow.h"3 4 MainWindow::MainWindow(QWidget *parent) :5     QMainWindow(parent),6     ui(new Ui::MainWindow)7 {8     ui->setupUi(this);9
10     //如下为连接函数
11     connect(ui->PushButtom_Quit, SIGNAL(clicked()), this, SLOT(close()));
12 }
13
14 MainWindow::~MainWindow()
15 {
16     delete ui;
17 }

第11行中的close()函数为SLOT的内建函数,可直接调用。

 (小技巧:当输入一个函数名后,只打出左括号,会立即弹出参数表,部分函数会弹出可作为参数的内建函数,对象会弹出对象中的属性列表。)

   至此,一个添加了按键可实现单击退出功能的窗口就完成了。执行后效果:

Qt Creator 使用教程相关推荐

  1. qt creator linux使用教程,linux qt creator使用教程

    linux qt creator使用教程 [2021-02-17 05:55:07]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace( ...

  2. 第0篇 开始学习Qt 与Qt Creator

    Qt官方信息 Qt官网:Digia and Qt have demerged into two companies – Digia's new strategy's main themes revea ...

  3. Qt Creator下载和安装(详细教程)以及如何发布可执行程序

    简介 Qt是跨平台的图形开发库,目前由Digia全资子公司 Qt Company 独立运营,官方网址:  http://www.qt.io/  也可以访问Qt项目域名:http://qt-projec ...

  4. QT Creator 应用程序*.exe文件打包发布详细教程【绿色便携形式 和 安装包形式】

      说明:本文相关操作均基于 Windows10 操作系统 + Qt应用程序框架(5.14.1) + Qt Creator 集成开发环境(4.11.1) +MinGW编译环境,Qt 及 IDE的版本查 ...

  5. 【Qt OpenGL】Qt Creator中的3D绘图及动画教程

    Qt Creator中的3D绘图及动画教程(参照NeHe) 刚刚学习了Qt Creator,发现Qt提供了QtOpenGL模块,对OpenGL做了不错的封装,这使得我们可以很轻松地在Qt程序中使用Op ...

  6. Qt Creator下载和安装(详细教程)

    简介 Qt是跨平台的图形开发库,目前由Digia全资子公司 Qt Company 独立运营,官方网址: Qt | Cross-platform software development for emb ...

  7. QT Creator 快速入门教程 读书笔记(一)

    一 Qt简介 Qt 是一个跨平台的C++应用程序框架,支持Windows.Linux.Mac OS X.Android.iOS.Windows Phone.嵌入式系统等.也就是说,Qt 可以同时支持桌 ...

  8. macOS Big Sur 安装配置QT creator教程

    最近成功在big sur版本上安装了QT creator,参考了网上若干帖子的经验,下面就总结一下安装成功的经验. 准备工作 第一步,安装Ruby(如果已经安装过可以跳过此步) 步骤参见 https: ...

  9. Qt Creator介绍 使用教程

    t Creator 是全新的跨平台 Qt IDE(集成开发环境),可单独使用,也可与 Qt 库和开发工具组成一套完整的 SDK(软件开发工具包). 其中包括:高级 C++ 代码编辑器,项目和生成管理工 ...

  10. linux qt creator git,Building Qt Creator from Git/zh

    En Ar Bg De El Es Fa Fi Fr Hi Hu It Ja Kn Ko Ms Nl Pl Pt Ru Sq Th Tr Uk Zh 在git中构建Qt Creator 依赖的库 为了 ...

最新文章

  1. 全球芯片行业现状分析:大家都在依赖美国 未来如何破局?
  2. jfinal多数据源ActiveRecordPlugin
  3. Parity Alternated Deletions
  4. beetl 时间输出格式化
  5. 交易机项目工作日志--2013-01-30
  6. SWMM面板基础认识
  7. 二元函数对xy同时求导_二元函数的连续、可偏导、可微、偏导数连续之间的关系...
  8. MAX30102 模拟IIC读取程序(C语言)
  9. 10X Genomics单细胞转录组测序
  10. PCL点云处理之计算三维向量夹角(六十五)
  11. 快速云:云计算供应商在合同谈判时可能拒绝的三个事项以及要求
  12. 解决Jmeter CA证书不受信任无法问题(导致代理服务器无法录制脚本)
  13. 全球及中国丝蛋白行业研究及十四五规划分析报告
  14. 世博之旅 (1/2)
  15. 【 linux 从入门到放弃(全网最详细虚拟机及c7安装)】
  16. 栈迁移过程记录,栈指针rsp、rbp、rip、leave变化过程
  17. 用php造了一个地址自动识别功能
  18. 第一节课的Python基础知识
  19. (原创)北美信用卡(Credit Card)个人使用心得与总结(个人理财版) [精华]
  20. Docker Overlayfs文件系统联合挂载原理

热门文章

  1. 阿里王坚:区块链与数据价值的交换
  2. 匿名方法和Lambda表达式-天轰穿
  3. linux系统网络代理设置
  4. 虚拟蜜罐-honeyd安装部署
  5. EditPlus配置Java运行环境
  6. 给定经纬度计算距离_根据两点经纬度计算距离
  7. 全网软件:高级信息搜索数据采集软件 InfoSeek FastSeek
  8. 海阔天空 在勇敢以后 --我的求职路
  9. android 百度地图离线地图功能
  10. 一文教会你如何基于高德地图获取城市公交网络数据(包含经纬度)