首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >PyQt5可视化 7 饼图和柱状图实操案例④

PyQt5可视化 7 饼图和柱状图实操案例④

原创
作者头像
会洗碗的CV工程师
发布2023-11-30 21:50:59
发布2023-11-30 21:50:59
3390
举报
文章被收录于专栏:LongJava学习资料LongJava学习资料

修改myMainWindow.py程序,添加功能

打开数据库

生成分数数据

import新模块

在构造函数中设置数据模型,调用生成分数函数

生成分数函数

运行看看

统计各分数段人数

构造函数中调用

统计各分数段人数的函数

运行看看

窗体的布局

窗体大小变化时界面的变化

拉大窗口看看

好难看,窗口拉大,显示区域没有跟着变大

设置栅格布局

设置栅格布局

在窗体空白处点击或者在右上角的对象选中窗体,选择栅格布局

设计界面效果如下,看上去不错

运行看看

初始大小

不错不错

放大到整个屏幕

好难看,上面的frameHead不需要那么高。界面放大,frameHead、frameData,tabWidget都拉大了

打破布局

让布局变回原样

固定frameHead高度

希望在窗口放大的时候,frameHead不放大,只是放大表格和图形显示区域

改frameHead的sizePolicy属性,当前这个属性是这样的

希望窗口扩大的时候,frameHead水平方向可以跟着放大,但垂直方向固定不动。修改策略

设置栅格布局

设置前窗体的层次结构

可以看到,窗体从大的角度来看由两个部分组成,一部分是frameHead,另一部分是splitter(由frameData和tabWidget组成)

从界面上来看,frameHead占据了窗口上方的大部分,但并没有占满整个上面一条空间

改为栅格布局

改完frameHead的属性后,再把窗体设为栅格布局。窗体变成了这样

由于设置了栅格布局,而且frameHead的扩展策略是水平方向Prefered,所以frameHead霸占了整个窗体上部空间(如果水平是fixed的,那么不会占满)

运行看看

刚运行界面

放大到整个屏幕

frameHead不会变太高了

splitter布局

当前的布局

从当前布局可以看出,frameData和groupBoxGrade通过一个splitter,组合到一起。

splitter是分裂器,可以左右分割和上下分割,可以在两个可以自由改变大小的组件之间进行分割

运行中改变布局

拖完之后

把屏幕放到最大

我正在参与2023腾讯技术创作特训营第三期有奖征文,组队打卡瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 修改myMainWindow.py程序,添加功能
    • 打开数据库
    • 生成分数数据
      • import新模块
      • 在构造函数中设置数据模型,调用生成分数函数
      • 生成分数函数
      • 运行看看
    • 统计各分数段人数
      • 构造函数中调用
      • 统计各分数段人数的函数
    • 运行看看
  • 窗体的布局
    • 窗体大小变化时界面的变化
    • 设置栅格布局
      • 设置栅格布局
      • 运行看看
      • 初始大小
      • 放大到整个屏幕
    • 打破布局
    • 固定frameHead高度
    • 设置栅格布局
      • 设置前窗体的层次结构
      • 改为栅格布局
      • 运行看看
    • splitter布局
      • 当前的布局
      • 运行中改变布局
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档