在qml文件中添加矩形对象时会发生什么?

时间:2011-08-06 15:32:48

标签: c++ qml

当我添加一个矩形

时会发生什么
Rectangle{
 width:40
 heigh: 40
 color:"blue"

}

在qml文件中?

什么调用了什么,并绘制了一个蓝色矩形? 机制是什么?你能告诉一些事情要读,我找不到。 感谢

1 个答案:

答案 0 :(得分:0)

一般来说:

 -> parse Qml code 
 -> create QDeclarativeItems
 -> add to QDeclerativeView's scene
 -> call items standard slot like onCreated()
 -> call the QDeclarativeItems paint method etc     

一旦你将QGraphicsRectItem输入到assistant-qt4(主qt文档助手)中,你会得到一种温暖的肚子感觉,后来才意识到你的qml代码“Rectangle”最终会创建一个。 Qt4 QtQuick实现目前是QGraphicsView / QGraphicsScene的精简抽象。如上所述,步骤相同:

 -> create QGraphicsItems
 -> add to QGraphicsView's scene 
 -> call QGraphicsItem paint method etc

这些课程记录得非常好,一旦你理解了它们的原理,你就可以继续前进并研究它们演变为QDeclarative *等等。不幸的是,后者的文档在某些细节上有些缺乏,但整体上非常有用。当然,还有更多 - 但是一旦你意识到源自QGraphicsView / -Scene类的QtQuick进化,其他一切都更合乎逻辑。然后,一瞥源代码(文档缺乏的地方)将使您感觉更加面向 - 因为您已经了解了解析的标记最终如何融合到QGraphicsScene(QDeclarativeView,...)中创建的QGraphicsItem中。

祝你好运!