转换后的视觉问候世界 python
converted visual hello world python
我有一个 directory/folder 包含两个文件,
MainWindow.py
Mainwindow.ui
我已经在 QtDesigner6 中设计了我的 MainWindow.ui 并进行了转换
输出文件到 MainWindow.ui
我有一个代码 window 可以启动 window/form 并显示
在它的完全荣耀中显示了一个空白 window 并且可以将其关闭。
from PySide6.QtWidgets import QApplication, QWidget
import sys
app = QApplication(sys.argv)
window = QWidget()
window.show()
app.exec_()
这段代码是我从书上抄来的,我的问题是如何得到这段代码
启动我转换后的 MainWindow.ui 文件而不是空白的 window?
我试过更改行 to:window = MainWindow()
因此删除了 QWidget 和其他许可,但没有显示我精心制作的 ui
表单文件不会自动在您的应用程序中使用,您必须手动加载
文件并使用 QUiLoader
基于它创建 window。在您的示例中,这类似于:
import sys
from PySide6.QtCore import QFile
from PySide6.QtUiTools import QUiLoader
from PySide6.QtWidgets import QApplication
main_form = QFile("MainWindow.ui")
main_form.open(QFile.ReadOnly)
app = QApplication(sys.argv)
window = QUiLoader().load(main_form)
window.show()
app.exec_()
另一种选择是使用 pyside6-uic
工具根据您的表单文件为小部件生成 class:
$ pyside6-uic MainWindow.ui > main_window.py
然后在您的代码中使用它,例如:
import sys
from PySide6.QtWidgets import QApplication, QMainWindow
from main_window import UI_MainWindow # your form class name with a UI_ prefix
app = QApplication(sys.argv)
window = QMainWindow()
UI_MainWindow().setupUi(window)
window.show()
app.exec_()
我有一个 directory/folder 包含两个文件, MainWindow.py Mainwindow.ui
我已经在 QtDesigner6 中设计了我的 MainWindow.ui 并进行了转换 输出文件到 MainWindow.ui
我有一个代码 window 可以启动 window/form 并显示 在它的完全荣耀中显示了一个空白 window 并且可以将其关闭。
from PySide6.QtWidgets import QApplication, QWidget
import sys
app = QApplication(sys.argv)
window = QWidget()
window.show()
app.exec_()
这段代码是我从书上抄来的,我的问题是如何得到这段代码 启动我转换后的 MainWindow.ui 文件而不是空白的 window?
我试过更改行 to:window = MainWindow() 因此删除了 QWidget 和其他许可,但没有显示我精心制作的 ui
表单文件不会自动在您的应用程序中使用,您必须手动加载
文件并使用 QUiLoader
基于它创建 window。在您的示例中,这类似于:
import sys
from PySide6.QtCore import QFile
from PySide6.QtUiTools import QUiLoader
from PySide6.QtWidgets import QApplication
main_form = QFile("MainWindow.ui")
main_form.open(QFile.ReadOnly)
app = QApplication(sys.argv)
window = QUiLoader().load(main_form)
window.show()
app.exec_()
另一种选择是使用 pyside6-uic
工具根据您的表单文件为小部件生成 class:
$ pyside6-uic MainWindow.ui > main_window.py
然后在您的代码中使用它,例如:
import sys
from PySide6.QtWidgets import QApplication, QMainWindow
from main_window import UI_MainWindow # your form class name with a UI_ prefix
app = QApplication(sys.argv)
window = QMainWindow()
UI_MainWindow().setupUi(window)
window.show()
app.exec_()