Pyqt5 实现窗口缩放,控件在窗口内自动伸缩的操作
作者:苏格拉倒 时间:2022-10-16 06:32:09
在Qtdesigner中新建一个主界面如下所示:
ctrl+R 预览
从预览图中可以看出这时的界面不支持伸缩,拖动过小的话会导致部分界面遮住不可见,这时我们就要用到布局选项,首先对上面的按钮和文本框布局按住ctrl选中要布局的控件
根据实际情况选中工具栏上的布局按钮,我这里是网格布局
选中后如下所示
然后在对底下的listwidget和tablewidget进行水平布局,布局完成后如下所示,其中有个细节是还要对Qgroupbox在进行一次水平或垂直布局,具体是选中Qgroupbox控件然后点击水平布局按钮,这时Qgroupbox内部的所有控件均按照水平进行布局
类似的对最下面的button进行垂直布局
最重要的一步来了,就是点击主界面的空白处,然后点击网格布局(根据自己的需要)
这时候在ctrl R预览在用右下角进行缩放可以看到是可以控件之间能够自由缩放,适配界面的大小:
现在基本实现缩放,但是界面的美观程度不够好,比如下面的两个按钮本应该在右下角现在确沾满了横向的整个界面,因此需要进一步美化,我们要通过添加label控件来进行留白,设计过程中先将label控件输入文字如下图所示:
是不是感觉比之前的好看了,然后我们把label的内容换位空格就好了
这时候界面就留有空白,比较好看!
还有一种辅助布局的方法是在属性里面,点击不同的布局会有不同的属性展示
比方说网格布局的时候可以选择列之间的比例如图中的layoutstretch 1,2,3 代表三列宽度比列为1:2:3
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
来源:https://blog.csdn.net/weixin_44405720/article/details/88854979
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
说说CSS的优先权 考虑CSS的继承与层叠
PYQT5开启多个线程和窗口,多线程与多窗口的交互实例
![](https://img.aspxhome.com/file/2023/6/62576_0s.jpg)
Python3 使用selenium插件爬取苏宁商家联系电话
Python中OpenCV实现简单车牌字符切割
![](https://img.aspxhome.com/file/2023/1/70031_0s.png)
python工具之清理 Markdown 中没有引用的图片
![](https://img.aspxhome.com/file/2023/0/67300_0s.png)
Python实现的各种常见分布算法示例
![](https://img.aspxhome.com/file/2023/1/76061_0s.png)
Python中isnumeric()方法的使用简介
Python-docx 实现整体修改或者部分修改文字的大小和字体类型
![](https://img.aspxhome.com/file/2023/5/90705_0s.jpg)
python GUI计算器的实现
![](https://img.aspxhome.com/file/2023/8/87948_0s.png)
JavaScript Table行定位效果
用python实现名片管理系统
![](https://img.aspxhome.com/file/2023/9/75349_0s.jpg)
Python flask框架端口失效解决方案
![](https://img.aspxhome.com/file/2023/5/89275_0s.png)
用err.raise自定义错误信息
Linux下python与C++使用dlib实现人脸检测
![](https://img.aspxhome.com/file/2023/9/59829_0s.jpg)
asp如何自动反馈电子邮件?
Python对数据进行插值和下采样的方法
教你pycharm运行Django第一个项目
![](https://img.aspxhome.com/file/2023/9/80669_0s.png)
使用AJAX的一个简单的例子
PHPExcel冻结(锁定)表头的简单实现方法
![](https://img.aspxhome.com/file/2023/9/55379_0s.jpg)