QT5-第一天

1.QT概述1

1.1 简介

跨平台C++图形用户界面应用程序框架。提供艺术级图形界面所需功能。

1.2 应用实例

  • Linux之KDE桌面环境
  • WPS office
  • Skype
  • Google Earth
  • VLC
  • Virtual Box

1.3 特点

  • 跨平台
  • 接口简单
  • 简化内存回收机制
  • 效率高,快速构建应用程序
  • 良好社区氛围
  • 嵌入式

2. 第一个QT程序

2.1 新建项目

名称不能有中文、空格,路径不能有中文

  • QWidget 父类,什么都无; QMainWindow 窗口,菜单栏 ; QDialog 对话框
  • 版本控制系统:SVN、VSS、GIT
  • .pro工程文件、解决方案,类似vs的.sln文件

2.2 main函数介绍

/********
main.cpp
********/
#include "mywidget.h"
#include <QApplication> //包含应用程序的头文件。

//应用程序入口 、argc命令行变量的数量、argv命令行变量数组。
int main(int argc, char *argv[])
{
    //应用程序对象,QT中有且仅有一个。
    QApplication a(argc, argv);
    myWidget w;//窗口对象,父类QWidget。
    w.show(); //窗口对象默认不显,调用show方法。
    return a.exec();//应用程序进入消息循环机机制,代码阻塞到当前行。
}

3. 便捷使用

3.1 命名规范

  • 类名 首字母大写,单词之间首字母大写
  • 函数名、变量名 首字母小写单词之间首字母大写

3.2 快捷键

  • 注释 Ctrl + /
  • 运行 Ctrl + r
  • 编译 Ctrl + b
  • 字体缩放 Ctrl + 滚轮
  • 查找 Ctrl + f
  • 整行移动 Ctrl+ shift + ↑ 或者↓
  • 帮助文档 F1 、左侧按钮、 文档路径
  • 自动对齐 Ctrl + i
  • 同名之间 .h 和 .cpp切换 F4

4. 窗口控件

/************
mywidget.cpp
************/
#include "mywidget.h"
#include "QPushButton"
myWidget::myWidget(QWidget *parent)
    : QWidget(parent)
{
    //创建一个按钮
    QPushButton *btn=new QPushButton;
    //btn->show();以顶层方式显示。
    //依赖窗口显示
    btn->setParent(this);
    //显示文本
    btn->setText("Push Me!");
    //按照控件大小创建窗口
    QPushButton *btn2=new QPushButton("第二个按钮",this);
    //移动btn2按钮
    btn2->move(100,50);
    //设置窗口大小
    resize(600,400);
    //固定窗口大小
    setFixedSize(600,400);
    //设置窗口标题
    setWindowTitle("第一个窗口");
}
myWidget::~myWidget()
{
}
/***********
mywidget.h
***********/
#ifndef MYWIDGET_H
#define MYWIDGET_H
#include <QWidget>
class myWidget : public QWidget
{
    Q_OBJECT //宏,允许类中使用信号和槽的机制。
public:
    myWidget(QWidget *parent = nullptr);//构造函数
    ~myWidget();
};
#endif // MYWIDGET_H
#-------------------------
#20200718_first.pro
#by obsessioner,2020-07-18
#
#-------------------------


QT       += core gui


greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
CONFIG += c++11


# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
TARGET=myappexe
TEMPLATE=app
# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0


SOURCES += \
    main.cpp \
    mywidget.cpp


HEADERS += \
    mywidget.h


# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

  1. 传智播客B站教程 ↩︎

### 回答1: 黑马qt公开课是一套为期5天的课件,主要介绍了Qt框架的基础知识和应用。Qt框架是一个跨平台的开发工具,可以方便地进行应用程序的设计、开发和调试,被广泛应用于图形界面开发、嵌入式系统和移动应用等领域。 在5天的课程中,学习者将对Qt框架的整体架构有一个全面的认识,包括Qt及其常用库的概念、功能和用法,也学会了如何使用Qt Designer进行界面设计和基于信号与槽的事件编程。 此外,课程还将介绍Qt中常用的编程模式和技术,如MVC架构、文件操作、网络编程等,并通过实例让学习者深入理解和应用这些概念和技术。 5天的课件中还提供了大量的实践操作,让学习者通过编写实际案例,深入理解所学知识,并更好地掌握Qt框架的基础和应用,为以后的工作打下坚实的基础。 总之,如果你想快速入门Qt框架的基础知识和应用,那么黑马qt公开课—5天的课件,将是一个非常好的选择。 ### 回答2: 黑马qt公开课的课件共分为5天,内容涵盖了Qt的基础知识、UI设计、绘图系统、多线程编程和网络编程等方面。通过这5天的学习,学员可以全面掌握Qt的开发技能和应用场景,具备开发Qt应用程序的能力。 第一天课程主要介绍了Qt的基础知识,包括Qt窗口和控件、信号与槽机制、事件处理、布局和样式等内容。通过这些基础知识的学习,学员可以了解Qt的基本工作原理和操作方法。 第二天的课程主要讲解了Qt的UI设计,包括UI设计器的使用、自定义控件和样式等内容。学员可以从中学习到如何设计美观、直观的用户界面。 第三天的课程则主题为Qt的绘图系统,包括2D和3D绘图、动画效果和图形转换等内容。在这一天的课程中,学员可以学习到如何使用Qt进行图形绘制和界面效果的优化。 第四天的课程主要介绍了Qt的多线程编程,包括线程的创建和管理、互斥锁和信号量等内容。学员可以从中学习到如何在Qt中实现多线程应用程序。 第五天的课程则主题为Qt的网络编程,包括socket编程、HTTP协议和Web服务等内容。学员可以从中学习到如何使用Qt进行网络编程,实现客户端和服务器的互通。 总体来说,黑马qt公开课的5天课程涵盖了Qt的核心知识点,让学员能够全面掌握Qt的开发技能和应用场景。通过这些课程的学习,学员可以成为一名合格的Qt开发工程师。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值