2017-06-14 58 views
0

我想讓我的系統在登錄屏幕中顯示主機名。我正在使用SDDM並編輯相關的QML文件以在需要的位置顯示靜態文本。但是,我在GitHub的SDDM wiki中發現有一個名爲的代理對象sddm,它具有主機名屬性。在SDDM QML登錄屏幕中顯示主機名

如何使用QML顯示對象(我假設它是sddm.hostname)?

這裏是我試過

import QtQuick 2.0 
import QtQuick.Layouts 1.1 

import org.kde.plasma.core 2.0 
import org.kde.plasma.components 2.0 
import org.kde.plasma.extras 2.0 

ColumnLayout { 
    Label { 
    text: sddm.hostname 
    font.pointSize: 14 
    Layout.alignment: Qt.AlignHCenter 
    } 
} 

的代碼,但它看起來像 '的文字:' 只接受字符串,我需要接受sddh.hostname

感謝
-L

+1

請發佈您的編碼,鏈接等。 – folibis

+0

對不起。我所指的SDDM GitHub鏈接是。我正在尋找在qml文件中使用的代碼,以通過sddm代理對象或其他方式顯示主機名。 –

+0

好的,因爲我看到它很清楚 - 「我們提供了一個代理對象,稱爲sddm作爲上下文屬性作爲主題。」 – folibis

回答

0

我從GitHub上的主題文件中找到了一個解決方案[https://github.com/bchretien/sddm-futuristic-theme/blob/master/futuristic/Main.qml] - 它看起來像我有一個命名錯誤。當我使用文本時:sddm.hostName它適用於登錄。該工程的代碼是

import QtQuick 2.0 
import QtQuick.Layouts 1.1 

import org.kde.plasma.core 2.0 
import org.kde.plasma.components 2.0 
import org.kde.plasma.extras 2.0 

ColumnLayout { 
    Label { 
    text: sddm.hostName 
    font.pointSize: 14 
    Layout.alignment: Qt.AlignHCenter 
    } 
} 

現在我只需要弄清楚爲什麼它不工作的鎖定屏幕上,但可能是另一個問題的話題!