C++Qt入门(1)---Qt简介,第一个Qt程序,Qt按钮

文章目录

    • 一、QT简介
      • 1.什么是QT?
      • 2.Qt的发展史?
    • 二、第一个Qt程序
      • 1.路径名,文件名中不能有中文
      • 2.创建默认窗口类
      • 3.main函数
      • 4.对.pro文件的解释
      • 5.Qt Creator快捷键
      • 6.QPushButton的创建
      • 7.对象树(了解)
      • 8.QT中的坐标系

一、QT简介

1.什么是QT?

Qt是一个跨平台的C++图形用户界面应用程序框架

2.Qt的发展史?

1991年Qt最早由奇趣科技开发
1996年进入商业领域,是目前流行的Linux桌面环境KDE的基础
……(略)
3.Qt支持的平台
4.Qt的下载与安装
这里我使用的是Qt 5.12.2

二、第一个Qt程序

1.路径名,文件名中不能有中文

2.创建默认窗口类

基类有三种选择:QWidget,QMainWindow,QDialog

3.main函数

(1)QApplication a 应用程序对象,有且只有一个
(2)Widget w 实例化窗口对象
(3)w.show()调用show函数,显示窗口
(4)return a.exec() 让应用程序对象进入消息循环机制中,代码阻塞到当前行

#include "widget.h"
#include 
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();
    return a.exec();
}

4.对.pro文件的解释

(1)QT包含的基本模块
QT       += core gui
(2)如果QT在四版本以上,就包含widget模块
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
(3)生成的.exe文件的名称
TARGET = HelloQT
(4)模板,应用程序模板Application
TEMPLATE = app
(5)源文件,自动追加
SOURCES += \
        main.cpp \
        widget.cpp
(6)头文件
HEADERS += \
        widget.h

5.Qt Creator快捷键

ctrl+/:注释
ctrl+r:运行
ctrl+鼠标滚轮:字体缩放
ctrl + f:查找
ctrl + shift + 上或下:整行移动
F1:帮助文档。ESC:退出
ctrl + i:自动对齐
F4:同名之间的.h和.cpp切换

6.QPushButton的创建

#include "widget.h"
#include
//使用初始化列表直接调用父类的构造函数
Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    //创建一个按钮
    QPushButton * but1 = new QPushButton();
    //若使用show方式,则会以顶层方式弹出
    //but1->show();
    //让but对象依赖在当前窗口中
    but1->setParent(this);
    //设置按钮的文本
    but1->setText("俺是第一个按钮");
    //一步完成上述所有步骤,按照控件的大小创建窗口
    QPushButton * but2 = new QPushButton("俺是第二个按钮",this);
    //移动第二个按钮
    but2->move(100,100);
    //设置按钮的大小
    but2->resize(200,100);
    //重置窗口的大小
    resize(600,400);
    //设置固定的窗口大小
    setFixedSize(600,400);
    //设置窗口的标题
    setWindowTitle("你好QT");
}

Widget::~Widget()
{

}

效果图:
C++Qt入门(1)---Qt简介,第一个Qt程序,Qt按钮_第1张图片

7.对象树(了解)

(1)当创建的对象在堆区的时候,如果指定的父亲是QObject派生下来的类或者QObject子类派剩下来的类,可以不用管理释放的操作,将对象会放入到对象树中
(2)一定程度上简化了内存回收机制

8.QT中的坐标系

(1)左上角为(0,0)点
(2)x以右为正方向,y以下为正方向

你可能感兴趣的:(C++,qt,c++)