2016-11-05 2 views
0

Qt 5.7을 사용하고 있습니다. 내 OS는 우분투 16.04입니다. 내 기본 코드는 여기에 있습니다 :Qt : 머티리얼 디자인이 실행되고 있지 않습니다.

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에서 재질 디자인을 사용하려면 어떻게해야합니까?

답변

1

스타일을 가져오고 속성을 설정해도 응용 프로그램이 해당 스타일로 실행되지 않습니다. 동일한 파일에서 여러 스타일을 가져 와서 각각의 스타일 별 속성을 설정할 수 있습니다. 응용 프로그램이 해당 특정 스타일로 실행될 때 적용됩니다. 특정 스타일을 선택하는 방법은 Using Styles in Qt Quick Controls 2을 참조하십시오.

+0

감사합니다. [qputenv] (http://doc.qt.io/qt-5/qtglobal.html#qputenv)를 사용했습니다 : qputenv ("QT_QUICK_CONTROLS_STYLE", "material"); –

관련 문제