• Appliction:应用程序,如果使用Qt写一个GUI程序,就选它
  • Qt Widget:传统的开发GUI的方式
  • Build System:是一个构建系统,Qt写的程序涉及了一系列的元编程技术,就是通过代码来生成代码
    写的代码编译时,不是直接编译,而是调用元编程工具基于现有代码生成一些代码,再编译全部代码
    构建工具就是来完成编译过程中各方面的协调工作,主要使用qmake
  • Base class:用QtCreater创建项目,会自动生成一些代码(代码内容是一个类),此处要选择这个自动生成的类的父类是谁
    QWidget:表示一个控件,窗口上一个具体的元素,输入框、按钮、下拉框
    QMainWindow:完整的应用程序窗口,菜单栏、工具栏、状态栏
    QDialog:表示一个对话框
  • Form file:通过form file文件,以图形化的方式来生成界面
  • Kit:选择基于哪个编译器的Qt SDK来构建后续代码

Qt文件介绍

main.cpp文件介绍
在这里插入图片描述

  • QApplication a;
    编写一个Qt的图形画界面程序,一定要有该类对象
  • Widget w;
    在创建项目时,生成的Widget类,父类是QWidget,用来创建一个控件对象
  • exec;
    执行程序

Widget.h文件
在这里插入图片描述

Widget.cpp文件

  • 点击ui文件,Qt Creator调用Qt Designer,打开ui文件(一个图形化的界面编辑器)
  • 本质是一个xml文件(与html相似,都是使用标签来表示数据)
    Qt中xml文件用来描述程序界面的样子,qmake会调用相关的工具,依据这个xml文件生成C++代码

pro文件:Qt项目的工程文件,是qmake自动生成的,类似makefile文件
在这里插入图片描述

项目运行后,生成的临时文件都在buil-xxxxx目录中
在该路径下有ui界面生成的代码

按钮

按钮的构造函数
在这里插入图片描述


调整按钮位置
在这里插入图片描述

按钮一般用new实例化一个button对象,直接从堆区申请空间,程序结束或者人为手动释放则可释放,这样设置可以让父对象释放它,因为button要显示在主窗口中,需要button放在子对象列表中。

创建按钮

方式1:

  • QPushButton* button=new QPushButton
    buttoc->show()会新开辟一个窗口
  • 此时需要设置按钮父对象是窗口
    button->setParent(this)

方式2:

  • QPushButton* button=new QPushButton(“按钮名”,this)

按钮属性设置

  • button->setText(“按钮名字”)
  • 设置按钮位置
    button->move(x,y)
    窗口中,以左上角为原点(0,0),X轴向右增加,Y轴向下增加
  • 设置按钮大小
    button->setFixedSize(x,y)

对象树

A控件中,嵌入了B控件,会生成一个树形关系,A就是一个父节点,B对象是一个子节点
对象被组织起来后,A控件被销毁后,该控件内的所有对象都会被销毁

最好不要在栈上创建组件
1定义的控件随着函数的结束而销毁,只是瞬间存在一下
2可能两次析构窗口中的组件(先创建组件,再创建窗口就会出错)

坐标系

Qt中,屏幕最左上角是原点(0,0)
x轴正方向水平向右
y轴正方向水平向下

B控件坐标系的原点是A控件的左上角

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐