中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

pyqt5控件隨窗口變化怎么實現

小億
354
2023-12-11 22:09:46
欄目: 編程語言

要實現PyQt5控件隨窗口變化,可以使用布局管理器來自動調整控件的大小和位置。

首先,需要選擇合適的布局管理器,常用的有QHBoxLayout(水平布局)和QVBoxLayout(垂直布局)。接下來,在布局管理器中添加控件。

在窗口的resizeEvent事件中,可以重新調整控件的大小和位置,使其適應窗口的變化。可以通過控件的setGeometry方法來設置控件的大小和位置。

下面是一個示例代碼:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QHBoxLayout, QWidget, QLabel

class MyWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        # 創建一個水平布局
        layout = QHBoxLayout()

        # 創建兩個標簽控件
        label1 = QLabel('Label 1')
        label2 = QLabel('Label 2')

        # 將標簽控件添加到布局中
        layout.addWidget(label1)
        layout.addWidget(label2)

        # 創建一個中央部件,并設置為布局
        widget = QWidget()
        widget.setLayout(layout)

        # 將中央部件設置為窗口的中央部件
        self.setCentralWidget(widget)

    def resizeEvent(self, event):
        # 獲取窗口的大小
        size = event.size()

        # 調整控件的大小和位置
        self.centralWidget().setGeometry(0, 0, size.width(), size.height())

        # 調用父類的resizeEvent方法
        super().resizeEvent(event)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = MyWindow()
    window.show()
    sys.exit(app.exec_())

在上面的代碼中,我們創建了一個QHBoxLayout布局,并添加了兩個QLabel控件。然后,將布局設置為窗口的中央部件。在窗口的resizeEvent事件中,我們根據窗口的大小調整了中央部件的大小和位置。

運行代碼后,當調整窗口的大小時,兩個標簽控件會隨著窗口的變化而變化。

0
凌海市| 凤凰县| 台东市| 道真| 墨脱县| 南江县| 苍山县| 江阴市| 张家口市| 新竹县| 禹城市| 平泉县| 北海市| 永安市| 洛川县| 昌乐县| 鸡东县| 江北区| 东城区| 阿城市| 茌平县| 蓬溪县| 荆州市| 习水县| 蓝田县| 清河县| 酉阳| 弥勒县| 江达县| 贵定县| 大足县| 兴国县| 清徐县| 五指山市| 东源县| 珲春市| 阜康市| 偃师市| 斗六市| 肥西县| 仁布县|