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对象上的该对象本身,而不是返回值。
