PCM_Viewer/test_simple.py

54 lines
1.2 KiB
Python
Raw Normal View History

2026-02-06 22:49:52 +08:00
# -*- coding: utf-8 -*-
"""简单测试 QML 加载"""
import sys
from PySide6.QtGui import QGuiApplication
from PySide6.QtQml import QQmlApplicationEngine
from PySide6.QtCore import QUrl
import os
app = QGuiApplication(sys.argv)
# 创建一个非常简单的 QML
simple_qml = """
import QtQuick 2.12
import QtQuick.Controls 2.12
ApplicationWindow {
visible: true
width: 400
height: 300
title: "Test"
Text {
anchors.centerIn: parent
text: "QML Loaded Successfully!"
font.pixelSize: 20
}
}
"""
# 先尝试从字符串加载
engine = QQmlApplicationEngine()
engine.loadData(simple_qml.encode('utf-8'))
if engine.rootObjects():
print("OK: QML loaded successfully from string")
sys.exit(app.exec())
else:
print("FAIL: Failed to load QML from string")
# 尝试从文件加载
test_file = "test_simple.qml"
with open(test_file, 'w', encoding='utf-8') as f:
f.write(simple_qml)
engine2 = QQmlApplicationEngine()
engine2.load(QUrl.fromLocalFile(os.path.abspath(test_file)))
if engine2.rootObjects():
print("OK: QML loaded successfully from file")
sys.exit(app.exec())
else:
print("FAIL: Failed to load QML from file")
sys.exit(-1)