2014-04-12 34 views
1

我想弄清楚QML中的默認關鍵字是什麼。QML中默認關鍵字的用途是什麼?

在這個例子中:http://qt-project.org/doc/qt-4.8/declarative-ui-components-tabwidget.html, 它是如何被使用的?

由於在例如它說,

的TabWidget的任何子項目實際添加到「堆」 項目的孩子。

但在main.qml中,矩形作爲TabWidget的子項添加。

有人能給我一個清楚的瞭解嗎?

在此先感謝。

+0

你讀過關於它的[documentation](http://qt-project.org/doc/qt-5/qtqml-syntax-objectattributes.html#default-properties)嗎? – lpapp

+0

@LaszloPapp我讀過它,但我無法理解它在TabWidget示例中的使用方式。另外您發送的文檔是用於導入QtQuick 2.0的,對於導入QtQuick 1.0或導入QtQuick 1.1是否也是一樣? – rkc88

+0

終於明白了!謝謝@LaszloPapp – rkc88

回答

1

它基本上是QML對象的默認屬性。也就是說,當你沒有明確地指定它時,它會回落到那個。查看更詳細的解釋和示例中的documentation

默認屬性 對象定義可以有一個默認屬性。如果某個對象在另一個對象的定義中聲明,而沒有將其聲明爲某個特定屬性的值,那麼默認屬性就是賦值給它的屬性。 使用可選的default關鍵字聲明屬性將其標記爲默認屬性。例如,假設有一個文件MyLabel.qml用默認屬性someText:

// MyLabel.qml 
import QtQuick 2.0 

Text { 
    default property var someText 

    text: "Hello, " + someText.text 
} 

的someText值可以在MyLabel對象定義被分配到,像這樣:

MyLabel { 
    Text { text: "world!" } 
} 

這具有完全按照以下相同的效果:

MyLabel { 
    someText: Text { text: "world!" } 
} 

請注意,這應該是或多或少的Qt 4相同,也爲conce PT。

0

它用來描述QML對象屬性,具體default property

+0

感謝@sergk的鏈接 – rkc88

+1

我建議不要使用只有鏈接的答案,因爲它們會隨着時間的推移而被打破。 – lpapp

相關問題