这是使用PyQT5作为UI的首次提交,将后端和UI合并到1个工程中,统一使用了Python,没有使用JS和HTML

This commit is contained in:
2025-12-14 12:13:19 +08:00
commit 872b181703
122 changed files with 70944 additions and 0 deletions

61
UI/reserved/debug_main.py Normal file
View File

@@ -0,0 +1,61 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
DTM PyQt5重构项目主入口 - 调试版本
"""
import sys
import os
from PyQt5.QtWidgets import QApplication
from PyQt5.QtQml import QQmlApplicationEngine
from PyQt5.QtCore import QUrl, qDebug
from controllers.main_controller import MainController
def main():
print("正在启动应用程序...")
app = QApplication(sys.argv)
print("QApplication创建成功")
# 创建主控制器
controller = MainController()
print("MainController创建成功")
# 创建QML引擎
engine = QQmlApplicationEngine()
print("QQmlApplicationEngine创建成功")
# 将控制器暴露给QML
engine.rootContext().setContextProperty("mainController", controller)
print("控制器已暴露给QML")
# 加载主界面
current_dir = os.path.dirname(os.path.abspath(__file__))
qml_file = os.path.join(current_dir, "qml", "main.qml")
print(f"正在加载QML文件: {qml_file}")
if not os.path.exists(qml_file):
print(f"错误: QML文件不存在: {qml_file}")
sys.exit(-1)
engine.load(QUrl.fromLocalFile(qml_file))
print("QML文件加载完成")
if not engine.rootObjects():
print("错误: 未能创建根对象")
errors = engine.errors()
for error in errors:
print(f"QML错误: {error.toString()}")
sys.exit(-1)
else:
print("根对象创建成功")
print("应用程序启动完成")
sys.exit(app.exec_())
if __name__ == '__main__':
main()