PyQt5 – 设置固定的高度或宽度的窗口大小

  • Post category:Python

PyQt5是Python的一个GUI库,可以通过它创建各种图形用户界面,包括窗口、按钮、标签等。设置窗口的大小是PyQt5的一个基本操作,下面我来详细讲解如何设置固定的窗口大小。

1. 设置固定的高度和宽度

在PyQt5中,可以通过setFixedSize方法来设置固定的窗口大小。该方法的参数是一个QSize对象,其中存放着要设置的宽度和高度。代码如下:

import sys
from PyQt5.QtWidgets import QApplication, QWidget

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = QWidget()
    window.setFixedSize(300, 200)
    window.show()
    sys.exit(app.exec_())

在上面的代码中,首先创建了一个QWidget对象window,然后使用setFixedSize将其大小设置为300×200。最后通过show方法将窗口显示出来。运行程序,就会看到一个固定大小为300×200的窗口。

2. 根据窗口内容自适应调整大小

有时候,我们需要根据窗口内容的大小来自适应调整窗口的大小。这时候,可以使用窗口的sizeHint方法来获取合适的窗口大小。代码如下:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QTextEdit

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = QWidget()
    text_edit = QTextEdit()
    text_edit.setPlainText('Hello, PyQt5!')
    window.setCentralWidget(text_edit)
    window.resize(window.sizeHint())
    window.show()
    sys.exit(app.exec_())

在上面的代码中,首先创建了一个QTextEdit对象text_edit,并设置其内容为Hello, PyQt5!。然后创建了一个QWidget对象window,将text_edit设置为其中心控件(setCentralWidget)。接着通过sizeHint方法获取合适的窗口大小,并使用resize方法将窗口大小设置为获取到的大小。最后通过show方法将窗口显示出来。运行程序,就可以看到根据窗口内容自适应调整大小的效果。

综上所述,以上就是设置固定的高度或宽度的窗口大小的完整使用攻略。