Qt:Material设计不是运行
Qt: Material Design is not running
我正在使用 Qt 5.7。我的 OS 是 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") }
}
}
我使用 material 设计,但是当我在桌面上 运行 这个应用程序时,我看到 Qt 默认样式,而不是 material 设计:Image Link。我没有收到任何错误或警告。当我在 Android 设备(平板电脑)和 Genymotion 上 运行 这个应用程序时,我看到了相同的结果。我正在使用 NVIDIA 卡,我的驱动程序是 X.Org(开源)。但是当我使用 NVIDIA 340.98 驱动程序时,我收到此警告:"NV-GLX" missing on display ":0"
并且我看到此应用程序风格不是桌面、Android 设备或 Genymotion 上的 material 设计。我怎么解决这个问题?如何在 Qt/QML 上使用 material 设计?
导入样式并为其设置属性不会使应用程序 运行 具有该样式。您可以在同一个文件中导入多个样式,为每个样式设置特定于样式的属性。这些在应用程序 运行 具有该特定样式时生效。有关 select 特定样式的可用方法,请参阅 Using Styles in Qt Quick Controls 2。
我正在使用 Qt 5.7。我的 OS 是 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") }
}
}
我使用 material 设计,但是当我在桌面上 运行 这个应用程序时,我看到 Qt 默认样式,而不是 material 设计:Image Link。我没有收到任何错误或警告。当我在 Android 设备(平板电脑)和 Genymotion 上 运行 这个应用程序时,我看到了相同的结果。我正在使用 NVIDIA 卡,我的驱动程序是 X.Org(开源)。但是当我使用 NVIDIA 340.98 驱动程序时,我收到此警告:"NV-GLX" missing on display ":0"
并且我看到此应用程序风格不是桌面、Android 设备或 Genymotion 上的 material 设计。我怎么解决这个问题?如何在 Qt/QML 上使用 material 设计?
导入样式并为其设置属性不会使应用程序 运行 具有该样式。您可以在同一个文件中导入多个样式,为每个样式设置特定于样式的属性。这些在应用程序 运行 具有该特定样式时生效。有关 select 特定样式的可用方法,请参阅 Using Styles in Qt Quick Controls 2。