首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >QML:我如何访问中继器之外的项目的id?

QML:我如何访问中继器之外的项目的id?
EN

Stack Overflow用户
提问于 2014-03-18 16:19:03
回答 2查看 788关注 0票数 0

我对QML很陌生,当我试图从中继器内部访问一个元素时,我遇到了一个问题。

我有一个中继器,它生成每个鼠标区域的矩形。单击鼠标区域应更改以前定义的背景窗口根的颜色,但单击时我只得到:"ReferenceError: root未定义“。如果我在中继器外面创建一个带有鼠标区域的矩形,那么它就能工作了。那么,如何使用中继器内的鼠标区域访问中继器外部的元素呢?谢谢你的帮助。我现在真的被这个问题困住了。

代码语言:javascript
运行
复制
import QtQuick 2.0
import QtQuick.Window 2.1

Window
id: root
visible: true
width: 600; height: 600
color: "black"
{
Grid
{
    columns: 3
    spacing: 20
    x: 20
    y: 20
    Repeater{
        id: repeater1
        model: 3
        Rectangle {
            color: "White"; width: 100; height: 100;
            radius: 10
            MouseArea
            {
                anchors.fill: parent
                onClicked:
                {
                    root.color="white"
                }
            }
        }
    }
}
}
EN

回答 2

Stack Overflow用户

发布于 2014-03-19 06:05:40

我在windows模拟器上测试了您的代码,甚至无法正确运行;它只是显示了一个白色的空白页。也许是因为我没有在我的main.cpp中使用main.cpp。

要在我的模拟器上运行它,我将窗口元素更改为矩形,它运行得非常好。当我点击一个按钮时,背景色会变成白色。

票数 0
EN

Stack Overflow用户

发布于 2014-03-18 16:53:22

首先导入这两个标头

代码语言:javascript
运行
复制
import QtQuick 2.0
import QtQuick.Window 2.1

第二,窗口项{}的大括号root在哪里?

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22485118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档