【问题标题】:Qt: Material Design is not runningQt:材料设计没有运行
【发布时间】:2016-11-05 12:23:39
【问题描述】:

我使用的是 Qt 5.7。我的操作系统是 Ubuntu 16.04。我的基本代码在这里:

import QtQuick 2.7
import QtQuick.Controls 2.0
import QtQuick.Layouts 1.0

import QtQuick.Controls.Material 2.0

ApplicationWindow {
  visible: true
  width: 300
  height: 300
  title: qsTr("Hello World")

  Material.theme: Material.Dark
  Material.accent: Material.Green

  Column {
    anchors.centerIn: parent

    RadioButton { text: qsTr("Radio Button 1") }
    RadioButton { text: qsTr("Radio Button 2") }
    RadioButton { text: qsTr("Radio Button 3") }
  }
}

我使用材料设计,但是当我在桌面上运行这个应用程序时,我看到的是 Qt 默认样式,而不是材料设计:Image Link。我没有收到任何错误或警告。当我在 Android 设备(平板电脑)和 Genymotion 上运行这个应用程序时,我看到了相同的结果。我使用的是 NVIDIA 卡,我的驱动程序是 X.Org(开源)。但是当我使用 NVIDIA 340.98 驱动程序时,我收到了这个警告:"NV-GLX" missing on display ":0" 我看到这个应用程序风格不是桌面、Android 设备或 Genymotion 上的材料设计。我怎么解决这个问题?如何在 Qt/QML 上使用材料设计?

【问题讨论】:

    标签: android qt qml material-design qtquickcontrols2


    【解决方案1】:

    导入样式并为其设置属性不会使应用程序以该样式运行。您可以在同一个文件中导入多个样式,为每个样式设置特定于样式的属性。当应用程序以该特定样式运行时,这些将生效。有关选择特定样式的可用方法,请参阅Using Styles in Qt Quick Controls 2

    【讨论】:

    • 谢谢,我用qputenvqputenv("QT_QUICK_CONTROLS_STYLE", "material");
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-05
    • 2015-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-14
    相关资源
    最近更新 更多