【Qt】-学Qt前的准备

简介: 【Qt】-学Qt前的准备

1 Qt概述

1.1 什么是Qt

1)Qt是一个跨平台的C++图形用户界面应用程序框架。1991年由奇趣科技开发。支持XP,Linux,Window

下载与安装:参考以下博客 —> https://blog.csdn.net/qq_44859533/article/details/126708386?spm=1001.2014.3001.5501

2)Qt的优点:

  • 跨平台,几乎支持所有平台
  • 接口简单,容易上手
  • 简化了内存回收机制
  • 开发效率高

3)成功案例:

  • 谷歌地图
  • Linux桌面环境KDE

2 创建第一个Qt程序

1)点击创建后,选择项目路径以及项目名称

注意:名称、路径都不允许有中文

2)默认创建有窗口类:myWidget,基类有三种选择:QWidget,QMainWindow,QDialog

QMainWindow、QDialog和QWidget的区别:

QMainWindow中在setUi时自动为用户创建了一个菜单栏、工具栏、中心窗口和状态栏,也可以说是GUI程序的主窗口。

而QWidget是没有这几点的。

QDialog是对话框窗口的基类。对话框主要用来执行短期任务,或者与用户进行互动,它可以是模态的,也可以是非模态的。他没有菜单栏、工具栏、状态栏等。

什么时候用什么:

如果是主窗口,就使用QMainWindow类;

如果是对话框,就使用QDialog类;

如果不确定,有可能作为顶层窗口,也有可能嵌入到其他窗口,就使用QWidget类。4)main函数介绍:

#include "mywidget.h"
#include <QApplication>     //包含一个应用程序的类

//程序入口 argc命令行变量的数量,argv 命令行变量的数组
int main(int argc, char *argv[])
{
    //1、应用程序对象,在Qt中,应用程序对象有且仅有一个
    QApplication a(argc, argv);
    //窗口对象  myWidget父类 ->  QWidget
    myWidget w;
    //窗口对象,默认不会显示,必须调用show方法
    w.show();
    //让应用程序对象进入消息循环
    //让代码阻塞这行,后面代码不会执行
    return a.exec();
}

3 命名规范以及快捷键

3.1 .pro文件介绍
//Qt包含的模块
QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets  //大于4版本以上,包含widget模块

TARGET = 01FirstProject //目标: 生成exe程序的名称
TEMPLATE = app    //模板: 应用程序模板

SOURCES += main.cpp\  //源文件
        mywidget.cpp
    //a.cpp
HEADERS  += mywidget.h    //头文件
3.2 .h文件介绍
#ifndef MYWIDGET_H
#define MYWIDGET_H

#include <QWidget>  //包含一个头文件,QWidget窗口类

class myWidget : public QWidget //自己写一个myWidget类去继承QWidget这个类的功能
{
    Q_OBJECT       //是宏,允许类中使用信号和槽的类

public:
    myWidget(QWidget *parent = 0);  //构造函数
    ~myWidget();    //析构函数
};
#endif // MYWIDGET_H
3.3 命名规范
  • 类名:首字母大写,单词和单词之间首字母大写
  • 函数名:变量名称,首字母小写,单词与单词首字母之间大写
3.4 快捷键
  • 注释:ctrl + /
  • 运行:ctrl + r
  • 编译: ctrl + b
  • 字体缩放: ctrl + 鼠标滑轮
  • 查找:ctrl + f
  • 整行移动:ctrl + shift + ↑ 或 ↓
  • 帮助文档: F1,或者去文档地方:D:\Qt\Qt5.6.1\5.6\mingw49_32\bin
  • 自动对齐:ctrl + i
  • 同名之间的.h 和.cpp切换:F4

相关文章
|
4月前
|
存储 编译器 C++
QT之QFlags详解
QT之QFlags详解
75 0
|
Linux 调度 数据安全/隐私保护
Qt之QFtp
简述 QFtp 类提供了一个 FTP 协议的客户端实现。 该类提供了一个到 FTP 的直接接口,允许对请求有更多的控制。但是,对于新的应用程序,建议使用 QNetworkAccessManager 和 QNetworkReply,因为这些类拥有一个更简单、还更强大的 API。 简述 QFtp 工作流程 基本使用 连接并登录 FTP 服务器 切换工作目录 列出目
6732 0
|
安全 并行计算
Qt之QFutureWatcher
简述 QFuture 表示异步计算的结果,QFutureWatcher 则允许使用信号和槽监视 QFuture,也就是说,QFutureWatcher 是为 QFuture 而生的。 简述 详细描述 基本使用 更多参考 详细描述 QFutureWatcher 提供了有关 QFuture 的信息和通知,使用 setFuture() 函数开始监视一个特
3551 0
|
Java C++
Qt之QFuture
简述 QFuture 类代表一个异步计算的结果。 要启动一个计算,使用 Qt之Concurrent框架 中的 APIs 之一。 QFuture 允许线程与一个或多个结果同步,这些结果将在稍后的时间点准备就绪,该结果可以是具有默认构造函数和拷贝构造函数的任何类型。如果一个结果在调用 result()、resultAt() 或 results() 函数时不可用,QFutur
1972 0
|
安全 Java
Qt之QThreadPool和QRunnable
简述 QRunnable 是所有 runnable 对象的基类,而 QThreadPool 类用于管理 QThreads 集合。 QRunnable 类是一个接口,用于表示一个任务或要执行的代码,需要重新实现 run() 函数。 QThreadPool 管理和循环使用单独的 QThread 对象,以帮助程序减少创建线程的成本。每个 Qt 应用程序都有一个全局 QThre
3469 0
|
数据安全/隐私保护
Qt之QUrl
简述 QUrl 类提供了一个方便的接口使用 URLs。 它可以解析和构造编码和未编码形式的 URLs。QUrl 也支持国际化域名(IDNs)。 简述 详细描述 错误检查 字符转换 URL格式 scheme Authority user info path query fragment 深入使用 相对路径 用户输入 文件名 主机端口 本地文件 百分比编码
6206 0
Qt之QDateTimeEdit
简述 QDateTime类提供了一个部件,用于编辑日期和时间。 QDateTimeEdit允许用户编辑日期,通过使用键盘或箭头键来增加和减少日期和时间值。箭头键可以在QDateTimeEdit内进行部分移动,日期和时间的格式按照setDisplayFormat()设置的显示。 简述 基本使用 效果 源码 日期时间格式 效果 源码 日期时间范围 效果
2586 0
|
缓存 Unix Windows
Qt之QLocalSocket
简述 QLocalSocket类提供了一个本地socket。 在Windows中,这是一个命名管道;在Unix中,这是一个本地网域socket。 如果发生错误,socketError()会返回错误的类型,errorString()则返回人类可读的错误描述。 虽然QLocalSocket是一个事件循环使用而设计,它也可以不被如此使用。这种情况下,必须使用 waitF
2572 0
|
Unix Linux Windows
Qt之QLocalServer
简述 QLocalServer提供了一个基于本地socket的server。 QLocalServer可以接受来自本地socket的连接。通过调用listen(),让server监听来自特定key的连接。 调用nextPendingConnection()来接受一个挂起(等待)的连接作为一个已连接的QLocalSocket。函数返一个QLocalSocket指针,可以被
1941 0