Pyside2和材料设计

时间:2019-02-12 12:43:41

标签: python qt material-design pyside2

我正在编写一个简单的应用来控制实验设置。我已经完成了大多数重要的工作,并且我认为对UI小部件使用材质设计会很好。

我发现此仓库包含我想要的所有小部件https://github.com/laserpants/qt-material-widgets,但我不知道如何将其导入项目中。我正在使用Pyside2和qtDesigner,使用QUiLoader加载ui文件,例如:

class ConsoleWindow(QObject):
    def __init__(self, uifilename):
        super(ConsoleWindow, self).__init__(None)
        self.window = QUiLoader().load( QFile( 'uifile.ui' ) )

        self.setupCallbacks()

        self.window.installEventFilter(self)
        self.window.show()

 [...]

有人知道怎么做吗?

1 个答案:

答案 0 :(得分:0)

目前,您只有一个选择可以实现这一目标, 为您使用的每个元素使用样式表。

我发现一个old repository试图提供一组样式规则,以便您可以直接在代码中使用它们,但是我不知道它们与纯材料设计外观有何相似之处。

您可以设置每个元素的样式,例如:

var input = document.getElementsByName('Ticket')[0];

或为您的应用程序加载常规样式表:

class MyWidget(QWidget):
    def __init__(self):
        QWidget.__init__(self)
        # Changing background color
        self.setStyleSheet("background-color: rgb(0.2, 0.3, 0.8, 0.2);")

如果您想使用Qml,则可以像this example一样轻松实现。