PyQt5 – 如何停止调整窗口的大小| setFixedSize()方法

  • Post category:Python

当我们使用 PyQt5 开发 GUI 应用时,有时会需要限制用户调整窗口的大小。这时可以使用 setFixedSize() 方法来实现。

setFixedSize() 方法将窗口的大小固定为指定大小,用户无法再通过拖动边框改变窗口大小。该方法需要传入宽度和高度两个参数。

下面是一个示例代码:

from PyQt5.QtWidgets import QApplication, QWidget

app = QApplication([])
window = QWidget()

# 将窗口大小固定为 400x300
window.setFixedSize(400, 300)

window.show()
app.exec_()

在这个示例中,我们创建了一个固定大小为 400×300 的窗口。用户无法通过拖动边框改变窗口大小。

另外,我们可以使用 minimumSizeHint() 方法和 maximumSize() 方法来限制窗口的最小和最大大小。下面是一个示例代码:

from PyQt5.QtWidgets import QApplication, QWidget

app = QApplication([])
window = QWidget()

# 设置窗口最小大小为 400x300,最大大小为 800x600
window.setMinimumSize(window.minimumSizeHint())
window.setMaximumSize(800, 600)

window.show()
app.exec_()

在这个示例中,我们通过 minimumSizeHint() 方法获取到了最小大小,然后调用 setMinimumSize() 方法来设置最小大小。在设置最大大小时,直接调用了 setMaximumSize() 方法。

总结一下,使用 setFixedSize() 方法可以让窗口的大小保持不变,从而限制用户调整窗口大小。而使用 minimumSizeHint() 方法和 maximumSize() 方法可以限制窗口的最小和最大大小,从而保证用户无法调整窗口大小超出设定范围。