2014-01-05 3 views
1

을 가져옵니다. 나는 그것이 C++에서 어떻게 행해지는지에 대해 읽고 있었다. 그리고 이것은 정답이다. PyQt5를 사용하여 어떻게 만들 수 있습니까? 파이썬의 문서는 C++의 문서와 약간 다릅니다.PyQt5 ApplicationWindow 내가 PyQt5와 ApplicationWindow 인스턴스를로드하려고 빈 화면

#include <QGuiApplication> 
#include <QQmlApplicationEngine> 
#include <QQuickWindow> 

int main(int argc, char *argv[]) 
{ 
QGuiApplication app(argc, argv); 
QQmlApplicationEngine engine; 
engine.load(QUrl("qml/window/main.qml")); 
QObject *topLevel = engine.rootObjects().value(0); 
QQuickWindow *window = qobject_cast<QQuickWindow *>(topLevel); 
window->show(); 
return app.exec(); 
} 

답변

0

매우 기본적인 예 :

example.py :

from PyQt5.QtCore import QUrl 
from PyQt5.QtWidgets import QApplication 
from PyQt5.QtQuick import QQuickView 
import sys 

app = QApplication(sys.argv) 

view = QQuickView() 
view.setSource(QUrl("example.qml")) 
view.show() 

app.exec() 

example.qml :

import QtQuick 2.0 

Rectangle { 
    width: 300; height: 100 
    color: "gray" 

    Text { 
     id: helloworld 
     text: "Hello world!" 
     color: "blue" 
     font.pointSize: 32 
    } 
} 
+0

나는 리눅스에 대한 확실하지 않다 그러나 이것은 Windows에서 작동하지 않습니다. QML로로드하려면 C++로 ApplicationEngine 객체를 만들어야한다고 생각합니다. 파이썬 코드로 변환하는 데 어려움을 겪고 있습니다. – user2887117

+0

@ user2887117 QQuickView를 사용하는 경우 QmlEngine을 직접 만들 필요가 없으며 QQuickView가이를 처리하지만 원하는 경우 사용할 엔진을 지정할 수도 있습니다. [QML 응용 프로그램 배포] (http://qt-project.org/doc/qt-5.0/qtquick/qtquick-deployment.html) 또는 [QQuickView docs] (http://qt-project.org/)를 확인하십시오. doc/qt-5/qquickview.html # QQuickView-2) – mata

+0

빈 흰색 화면이 계속 표시되는 이유가 무엇인지 궁금합니다. qml에 간단한 ApplicationWindow를로드하려고합니다. – user2887117