如何将Qml文件从V-Play转换为python?

时间:2019-02-19 08:20:14

标签: python qt qml qt-creator v-play

我有一个qml文件,如下所示(由V-Play创建):

import VPlayApps 1.0
import QtQuick 2.0

App {
    // You get free licenseKeys from https://v-play.net/licenseKey
    // With a licenseKey you can:
    //  * Publish your games & apps for the app stores
    //  * Remove the V-Play Splash Screen or set a custom one (available with the Pro Licenses)
    //  * Add plugins to monetize, analyze & improve your apps (available with the Pro Licenses)
    //licenseKey: "<generate one from https://v-play.net/licenseKey>"

    NavigationStack {

        Page {
            title: qsTr("My page")

        }

        AppTextField {
            id: appTextField
            x: 0
            y: 329
            width: 256
            height: 19
            anchors.centerIn: parent
        }

        AppTextField {
            id: appTextField1
            x: 0
            y: 329
            width: 256
            height: 19
            anchors.verticalCenterOffset: 50
            anchors.centerIn: parent
        }

        Text {
            id: text1
            x: 0
            y: 620
            width: 24
            height: 20
            text: qsTr("A")
            font.pixelSize: 25
            anchors.horizontalCenter: appTextField1.horizontalCenter
        }

        AppButton {
            id: button
            x: 0
            y: 575
            width: 24
            height: 20
            text: qsTr("Click me please!")
            anchors.horizontalCenter: appTextField1.horizontalCenter
        }
    }
}

我由Qt Designer创建了许多PyQt5应用程序,因此它将是一个.ui文件,我可以通过pyuic5轻松地将其转换为python文件,但这是我第一次使用V-Play Qt创作者。

所以我的问题是:

如何将其转换为python文件(.py),正如您在代码中看到的那样,我创建了两个输入区域(AppTextField),我希望它成为python文件,因此可以添加该函数将输入区域中的数字相加,我尝试了一些方法,但没有一个起作用,我查看了Developing Python applications in Qt Creator等,但没有达到我的目标。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

Qt解释QML以生成图形项。我认为您不能将QML转换为Python。

但是,您可以轻松地将此文件集成到python脚本中:http://pyqt.sourceforge.net/Docs/PyQt5/qml.html

app = QGuiApplication(sys.argv)
engine = QQmlApplicationEngine()
engine.load(QUrl('./main.qml'))
app.exec_()