2014-04-12 32 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

相关问题