组件访问中的项目

时间:2011-10-11 10:24:14

标签: qml

我有以下qml文件:

import QtQuick 1.0
Component{

    Column{
        id: interHeader;

        Item{
         id:interItem
         height: 300
         width: 200

             Text{
                 id:title
                 text:"Text"
                 anchors.centerIn: parent
                 font.bold: true
                 elide:"ElideRight"
                 color: "Black"
             }
         }

        Item {
            width: parent.width
            height: 100

            //onClick event
            MouseArea {
                anchors.fill: parent

                onClicked:{
                        console.log("Ok");
                }
            }
        }
     }
}

问题是我需要为interItem分配一些KeyNavigation。 我想从另一个qml文件访问interItem。 怎么办呢?

1 个答案:

答案 0 :(得分:2)

在完全独立的QML文件中使用Component确实没有任何好处。删除组件并用大写字母命名您的Qml文件 - 例如InterHeader

然后在根项目下定义property。例如:

import QtQuick 1.0
Item {
id: interHeader
property variant keyActionUp
Keys.onUpPressed: keyActionUp
}

OR

您可以使用Connections函数为来自interHeader的信号执行回调。

http://doc.qt.nokia.com/4.7-snapshot/qml-connections.html