欢迎访问宙启技术站
智能推送

PyQt5中的loadUi()函数及其参数解析

发布时间:2023-12-24 05:50:35

在PyQt5中,loadUi()是一个用于将.ui文件加载为Python对象的函数。该函数的定义如下:

    def loadUi(uifile, baseinstance=None, custom_widgets=None):

loadUi()函数有三个参数:

1. uifile:要加载的.ui文件的路径。可以是相对路径或绝对路径。

2. baseinstance:如果已经有一个存在的Python对象(如对话框或主窗口),可以将其传递给loadUi()函数,以便UI可以加载到该对象上。如果未传递任何对象,则会创建一个新的对象。

3. custom_widgets:可选参数,用于定义自定义小部件的Python模块。这个参数是一个字典,将自定义小部件的名字映射到它们的Python类。

下面是一个使用loadUi()函数的例子:

from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5.uic import loadUi

class MyWindow(QMainWindow):
    def __init__(self):
        super(MyWindow, self).__init__()
        loadUi('mainwindow.ui', self)
        self.pushButton.clicked.connect(self.on_button_click)

    def on_button_click(self):
        text = self.lineEdit.text()
        self.label.setText(text)

if __name__ == '__main__':
    app = QApplication([])
    window = MyWindow()
    window.show()
    app.exec_()

在这个例子中,我们加载了一个名为"mainwindow.ui"的.ui文件,并将其加载到一个名为MyWindow的窗口对象中。我们使用了QPushButton、QLineEdit和QLabel等小部件,并在按钮点击事件中更新了标签的文本。

需要注意的是,.loadUi()函数返回的是加载到Python对象上的该对象本身,而不是返回值。