您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Pyqt5 实现窗口缩放,控件在窗口内自动伸缩的操作

51自学网 2021-10-30 22:51:56
  python
这篇教程Pyqt5 实现窗口缩放,控件在窗口内自动伸缩的操作写得很实用,希望能帮到您。

在Qtdesigner中新建一个主界面如下所示:

ctrl+R 预览

从预览图中可以看出这时的界面不支持伸缩,拖动过小的话会导致部分界面遮住不可见,这时我们就要用到布局选项,首先对上面的按钮和文本框布局按住ctrl选中要布局的控件

根据实际情况选中工具栏上的布局按钮,我这里是网格布局

选中后如下所示

然后在对底下的listwidget和tablewidget进行水平布局,布局完成后如下所示,其中有个细节是还要对Qgroupbox在进行一次水平或垂直布局,具体是选中Qgroupbox控件然后点击水平布局按钮,这时Qgroupbox内部的所有控件均按照水平进行布局

类似的对最下面的button进行垂直布局

最重要的一步来了,就是点击主界面的空白处,然后点击网格布局(根据自己的需要)

这时候在ctrl R预览在用右下角进行缩放可以看到是可以控件之间能够自由缩放,适配界面的大小:

现在基本实现缩放,但是界面的美观程度不够好,比如下面的两个按钮本应该在右下角现在确沾满了横向的整个界面,因此需要进一步美化,我们要通过添加label控件来进行留白,设计过程中先将label控件输入文字如下图所示:

是不是感觉比之前的好看了,然后我们把label的内容换位空格就好了

这时候界面就留有空白,比较好看!

还有一种辅助布局的方法是在属性里面,点击不同的布局会有不同的属性展示

比方说网格布局的时候可以选择列之间的比例如图中的layoutstretch 1,2,3 代表三列宽度比列为1:2:3

以上为个人经验,希望能给大家一个参考,也希望大家多多支持51zixue.net。如有错误或未考虑完全的地方,望不吝赐教。


Python 关于模块和加载模块的实现
python 抽象类的使用详解
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。