Qt中用设计器建立的窗口和用代码生成的窗口,为啥拖拽窗口大小的效果不一样?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt中用设计器建立的窗口和用代码生成的窗口,为啥拖拽窗口大小的效果不一样?相关的知识,希望对你有一定的参考价值。

在Qt中建立窗口,继承了QMainWindow,为什么在设计器中建立的窗口,可以拖拽边框使窗口的大小缩至最小,而用代码生成的窗口,当用鼠标拖拽边框使其缩小时,只能缩小至里面内容范围的最小尺寸,比如下面的样子,我做了四个label,设计器生成的可以缩小到让四个label都看不见,而用代码生成的则至少会显示这四个label,再小就不能小了。。

用设计器生成的窗口,可以缩至最小,以至于里面的内容都可以不显示。

用代码生成的窗口,已经不能再缩小,里面的内容必须完全显示。。

我想知道怎么才能让用代码生成的窗口可以向用设计器建立的窗口一样,能缩至最小呢?

这个是因为用设计器的话会默认设置一些sizePolicy的属性
代码里面加入setMinimumSize(x,y)后 应该就能达到你的要求
参考技术A 没代码看不出来...追问

不用看代码,您仔细看下我的描述,简单来说就是用代码写的界面和用qt designer设计器直接生成的界面的窗口缩放效果不一样。。

追答

不看代码不清楚你咋写的。。。
你试试修改Dialog高度的最小值:setMinimumHeight(int),设小一点试试

为啥qt designer设计界面和用python运行得到的不一样?

我使用qt designer设计了一个界面,如图1所示,然后使用pyuic5 -o命令得到了 .py文件,通过 .py在python中运行得到的界面如图2,全部都挤到左上角去了,在designer中设置的layout啥的都不起作用,这是为什么?

参考技术A 我想是你的代码错了,而让坐标全移到左上角去了

以上是关于Qt中用设计器建立的窗口和用代码生成的窗口,为啥拖拽窗口大小的效果不一样?的主要内容,如果未能解决你的问题,请参考以下文章

win10qt软件控件大小

为啥qt designer设计界面和用python运行得到的不一样?

为啥QT界面这里有个红色禁止

有没有办法在 Qt Creator 的设计器中组织窗口/屏幕?

如何使用 pyqt5 和 qt 设计器从主对话框窗口打开第二个窗口

Qt 创建器中的白色窗口