Qt入门篇

Qt入门篇

  • 项目
    • 项目组成
    • 项目构建过程
    • 简述
  • 信号和槽
    • 基本使用方法
    • 异同点
    • 使用注意事项
  • 界面
    • 界面文件和项目同时创建
    • 单独创建界面文件
  • QT安装

项目

项目组成

Qt软件项目构建文件主要包含三个部分:工程文件(.pro)、主函数(main.cpp)和创建的类对象(.cpp和.h),界面文件根据个人需求(.ui)。

项目构建过程

  1. 新建
    Qt入门篇_第1张图片
  2. 选择安装路径和填写项目名称
    Qt入门篇_第2张图片
  3. 选择编译版本
    Qt入门篇_第3张图片
  4. 类信息
    Qt入门篇_第4张图片
  5. 完成项目构建

简述

  • .pro 包含元素Qt库(QT += )头文件(HEADERS +=)源文件(SOURCES +=)界面文件(FORM +=)宏定义等;
  • main.cpp文件包含项目的主要逻辑:创建一个QApplication对象(管理GUI程序的控制流和主要设置,可以理解为Qt项目的主事件循环),进行相关操作,然后循环运行;

main.cpp

//头文件引用
#include "mainwindow.h"
#include 

//主函数入口
int main(int argc, char *argv[])
{
   QApplication a(argc, argv);
   MainWindow w;  //可以进行其他功能实现
   w.show();
   return a.exec();
}
  • :实现所需功能。
  • .ui文件:项目界面文件。

信号和槽

基本使用方法

Qt4写法

QObject::connect(&sender, SIGNAL(clicked()), &recevier, SLOT(quit()));

Qt5写法

QObject::connect(&sender, &QPushButton::clicked, &receiver, &QApplication::quit);

异同点

同:

  • 这里的发送和接收者都是对象指针
  • 信号绑定,可以一个信号绑定多个槽函数,也可以多个信号绑定一个槽函数,也可以信号绑定信号,进行转述;
  • 触发信号的方式 : emit + 空格 + 信号函数

异:

  • Qt4需要使用关键字SIGNALSLOT,并且函数需要指明参数个数;Qt5直接调用函数的类引用,无需指明参数个数。

使用注意事项

信号函数的参数个数必须大于等于槽函数的参数个数,否则无法绑定,发生错误.

信号函数只需要声明,无需函数实现.

创建的类中必须包含Q_OBJECT宏, 其内提供了信号槽机制和国际化机制等能力.

信号槽绑定必须在发送信号之前进行,通常会在构造函数中进行信号槽的相关绑定,少部分是在信号调用之前进行绑定(线程中调用时).

信号函数的命名常包含 send、 signal等表示清晰,槽函数常使用on + 大写信号函数名、 slot等表示清晰.

界面

界面文件和项目同时创建

如上述构建项目文件操作

单独创建界面文件

单独创建.ui文件后,需要如下三步操作,进行.ui文件调用:
mainwindow.h

namespace Ui {
class MainWindow;
}
private:
    Ui::MainWindow *ui;

mainwindow.cpp

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

注意事项

.ui文件创建要保持和类名称相同

当创建的.ui文件名称不相同时,可使用编辑文本打开.ui文件,将其中的类名 类名 进行修改,完成后在进行如上三步对ui文件进行引用。

QT安装

Qt官方安装路径: http://download.qt.io/

Qt入门篇_第5张图片

你可能感兴趣的:(qt)