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

Qt学习笔记第41到50讲

第41讲 UI美化遗留问题解决

如上图所示目前记事本的雏形已现,但是还是有待优化,比如右下角的拖动问题。

解决方法:

①首先修改了Widget类的构造函数。

Widget::Widget(QWidget *parent) : QWidget(parent) , ui(new Ui::Widget)
{
    ui->setupUi(this);
    this->setLayout(ui->verticalLayout);
    ui->widgetBottom->setLayout(ui->horizontalLayout);
}

下面开始逐步讲解,在Widget构造函数当中,我们首先初始化了成员变量:

 ui(new Ui::Widget)

这里为类的成员变量 ui 分配内存并进行初始化。ui 通常是一个指向特定用户界面类的指针,这个类是由 Qt 的 UI 设计工具生成的。通过初始化 ui,可以在后续的代码中访问和操作由设计师创建的用户界面元素。

然后设置父窗口和布局:

QWidget(parent)

调用父类 QWidget 的构造函数并传入 parent 参数。这使得当前创建的 Widget 实例能够与指定的父窗口建立关系。如果有父窗口,当父窗口被销毁时,子窗口也会被自动销毁,有助于管理窗口资源和层次结构。

ui->setupUi(this)

这个函数通常由 Qt 的 UI 设计工具生成的代码调用。它负责设置用户界面,将各种界面元素(如按钮、文本框等)与对应的成员变量关联起来,并根据设计设置初始状态和属性。

this->setLayout(ui->verticalLayout)

这一行是我们自己写的,将当前窗口的布局设置为 ui->verticalLayout。布局管理器用于自动管理窗口内的子部件的大小和位置。通过设置布局,可以确保界面元素在窗口大小变化时能够正确地调整位置和大小,提高用户界面的适应性。

ui->widgetBottom->setLayout(ui->horizontalLayout)

这一行也是我们自己写的,这里为特定的子部件 ui->widgetBottom 设置布局为 ui->horizontalLayout。这使得该子部件内的元素能够按照水平布局进行排列和调整。

②在UI底部添加两个弹簧控件;

左侧可拉伸,右侧选择fixed锁死长度。


http://www.kler.cn/a/381610.html

相关文章:

  • Web 第一次作业 初探html 使用VSCode工具开发
  • 聚类算法DBSCAN 改进总结
  • AttributeError: module ‘numpy‘ has no attribute ‘bool‘.
  • Centos7.9安装openldap+phpldapadmin+grafana配置LDAP登录最详细步骤 亲测100%能行
  • c++ [spdlog 配置与使用]
  • 使用TC命令模拟弱网丢包
  • ubuntu 24.04中安装 Easyconnect,并解决版本与服务器不匹配问题
  • C#语言发展历史
  • Nginx配置文件编写示例
  • 【ARM Linux 系统稳定性分析入门及渐进 2.1 -- Crash 命令 Session Control 集合】
  • DNS正反向解析,区域备份
  • 计算机毕业设计Python+大模型膳食推荐系统 知识图谱 面向慢性病群体的膳食推荐系统 健康食谱推荐系统 机器学习 深度学习 Python爬虫 大数据毕业设计
  • 室内定位论文精华-20241104
  • 【深度学习】梯度累加和直接用大的batchsize有什么区别
  • c语言简单编程练习10
  • 前后端分离,Jackson,Long精度丢失
  • 命令行参数、环境变量、地址空间
  • Django遍历文件夹及文件
  • 设置HTTP会话(Session)的Cookie域
  • doris使用使用broker从HDFS导入数据
  • ArcGIS/QGIS按掩膜提取或栅格裁剪后栅格数据的值为什么变了?
  • 域名自动重定向8080端口无法访问后端服务问题
  • C++算法练习-day37——112.路径总和
  • pyspark基础准备
  • Spring Boot 配置文件启动加载顺序
  • 录屏天花板,录课新玩法,人像+一切,PPT/PDF/视频/网页,也可即可录