当前位置: 首页 > news >正文

【Qt】编程基础

目录

一、Qt体系框架:

​编辑二、布局方式:

1.绝对布局

setGeometry()函数

2.盒子布局:

QHBoxLayout:水平布局管理器

QVBoxLayout:垂直布局管理器

QGridLayout:网格布局管理器

三、基本控件及其函数

标签类 :QLabel

按钮类:QPushButton

编辑框类 :QLineEdit

下拉框类:QComboBox

复选框类:QCheckBox

调色板类:QPalette

 提示框类:QMessageBox

QWidget基本函数:


一、Qt体系框架:

Qt类都有一个共同的祖先都是QObject类,其后面有三个大的子类分别负责不同的功能它们是:

  • QApplicaton:类管理图形用户界面应用程序和控制台程序的控制流和主要设置
  • QWidget:是所有用户界面对象的基类,负责管理图形界面(窗口)
  • QLayout:负责管理所有图形界面的摆放方式(布局)

二、布局方式:

1.绝对布局

setGeometry()函数

void QWidget::setGeometry ( int x, int y, int w, int h )

参数说明:

  x:表示子部件在父窗体行的位置

  y:表示子部件在父窗体列的位置

  w:表示子部件宽度

           h:表示子部件的高度

2.盒子布局:

  • QHBoxLayout:水平布局管理器

this->middle3=new QHBoxLayout();
this->middle3->addWidget(this->typeLab);

this->middle3->addWidget(this->typeBox);

this->middle3->setContentsMargins(80,0,80,0);//布局四周的距离,左上右下

  • QVBoxLayout:垂直布局管理器
  • QGridLayout:网格布局管理器

//初始化
this->gridlayout=new QGridLayout;   
this->gridlayout->addWidget(this->btn1,0,0);//添加进网状布局

//设置按钮随窗口变化
this->btn1->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);

//设置布局之间间隙
this->gridlayout->setSpacing(0);

//设置布局外边距

this->gridlayout->setMargin(0);

//舞台应用这个布局

this->setLayout(gridlayout);

三、基本控件及其函数

  • 标签类QLabel
  • 按钮类:QPushButton
  • 编辑框类 :QLineEdit

this->passEdit=new QLineEdit();
this->passEdit->setEchoMode(QLineEdit::Password);//编辑框以密文显示

  • 下拉框类:QComboBox

    QComboBox *typeBox;

//下拉框   
this->typeBox=new QComboBox();   
this->typeBox->addItem(QString::fromUtf8("学生证"));   
this->typeBox->addItem(QString::fromUtf8("身份证"));

  • 复选框类:QCheckBox

    QCheckBox *ck1;

    QCheckBox *ck2;

    QCheckBox *ck3;

  

  //复选框

    this->ck1=new QCheckBox(QString::fromUtf8("编程"));

    this->ck2=new QCheckBox(QString::fromUtf8("篮球"));

    this->ck3=new QCheckBox(QString::fromUtf8("足球"));

  • 调色板类:QPalette

//调色板
QPalette palette=this->palette();    palette.setBrush(QPalette::Background,QBrush(QPixmap("img/2.jpeg")));  //背景图片    //palette.setColor(QPalette::Background,Qt::black);   //背景颜色   
this->setPalette(palette);

  •  提示框类:QMessageBox

  • QWidget基本函数:
  • void QWidget::show ()//显示widget

  • void QWidget::hide ()//隐藏widget

  • bool QWidget::close ()//关闭widget

  • void QWidget:: resize ( int w, int h )//调整尺寸

  • void QWidget ::setWindowTitle()//设置窗口名字

  • void QWidget ::setWindowIcon()//设置窗口图标

例如:

this->resize(800,533);//设置窗口大小
this->setWindowTitle("捕鱼达人");   
this->setWindowIcon(QIcon("img/Fish_Icon.png"));

http://www.lryc.cn/news/544592.html

相关文章:

  • 《SegFace: Face Segmentation of Long-Tail Classes》论文分享(侵删)
  • Android AOSP系统裁记录
  • 音乐游戏Dance Dance Revolution(DDR)模拟器
  • Lua的table(表)
  • ZT36 小红和小紫的取素因子游戏
  • C# 使用 Newtonsoft.Json 序列化和反序列化对象实例
  • 用 AI 工具提升 UX/UI 设计效率:从研究到原型
  • 操作系统知识点12
  • FASIONAD:自适应反馈的类人自动驾驶中快速和慢速思维融合系统
  • Redis7——基础篇(八)
  • nvm安装
  • 基于vue框架的游戏博客网站设计iw282(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • spring MVC执行流程
  • 递归遍历目录 和 普通文件的复制 [Java EE]
  • 如何在docker上部署java服务
  • Machine Learning 初探
  • GESP2024年12月认证C++三级( 第三部分编程题(1)数字替换)
  • IDEA-插件开发踩坑记录-第六坑-UAST依赖问题
  • 单片机总结【GPIO/TIM/IIC/SPI/UART】
  • 信号和槽
  • Window下Redis的安装和部署详细图文教程(Redis的安装和可视化工具的使用)
  • 1.2.3 使用Spring Initializr方式构建Spring Boot项目
  • 数据可视化02-PCA降维
  • 大连指令数据集的创建--数据收集与预处理_02
  • xr-frame 3D Marker识别,扬州古牌坊 3D识别技术稳定调研
  • 【网络安全 | 漏洞挖掘】利用文件上传功能的 IDOR 和 XSS 劫持会话
  • 达梦数据库系列之安装及Mysql数据迁移
  • FS800DTU联动OneNET平台数据可视化View
  • ffmpeg avdevice_register_all 注册设备的作用
  • 使用JS遍历JSON数组