【问题标题】:QML + PyQt5 Material StyleQML + PyQt5 材质风格
【发布时间】:2017-09-12 05:35:26
【问题描述】:

我有一个简单的 PyQt5 应用程序,其中包括 QML 文件。我想为应用程序设置材质样式,但它返回错误。

import QtQuick 2.3
import QtQuick.Controls 2.1
import QtQuick.Window 2.2
import QtQuick.Controls.Material 2.1    

ApplicationWindow{
  title: qsTr('Qml app')
  id: mainWindow
  width:  500
  height: 400
  color: '#f6f6f6'
}

我该如何解决?请帮帮我 我的python代码是:

import sys
import PyQt5
from PyQt5 import QtWidgets
from PyQt5.QtQuick import QQuickView

if __name__ == '__main__':
     myApp = PyQt5.QtWidgets.QApplication(sys.argv)
     engine = PyQt5.QtQml.QQmlApplicationEngine()
     ctx = engine.rootContext()
     ctx.setContextProperty('main',engine)
     engine.load('styles/mat.qml')
     win = engine.rootObjects()[0]

     win.show()
     sys.exit(myApp.exec_())

还有错误信息:

Traceback (most recent call last):<br>
  File "C:\My\Python programms\app8.py", line 12, in <module><br>
    win = engine.rootObjects()[0]<br>
IndexError: list index out of range<br>

我正在使用 Python 2.7

【问题讨论】:

  • 错误信息是什么??
  • 你的python代码是什么?
  • 编辑您的帖子并添加您的代码
  • @eyllanesc,是的,我在将代码添加到评论时遇到问题,所以我更改了主要问题并将代码放入其中
  • 你确定文件 mat.qml 的路径在样式文件夹中吗?

标签: python pyqt qml pyqt5 qt-quick


【解决方案1】:

材质样式在 Qt 5.7 版本中可用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-01
    • 2017-08-22
    • 2014-12-14
    • 1970-01-01
    • 1970-01-01
    • 2019-05-28
    • 1970-01-01
    • 2016-12-08
    相关资源
    最近更新 更多