【问题标题】:How to call ImageView by objectName in QML如何在 QML 中通过 objectName 调用 ImageView
【发布时间】:2014-01-25 19:33:34
【问题描述】:

我正在我的 QML 中动态创建图像。这是我正在使用的代码:

for (var n = 0; n < 3 * numberOfTiles; n ++) {
            var image = imageDefinition.createObject();
            image.translationX = getX(n);
            image.translationY = getY(n);
            image.objectName = ("image"+n) 
            drawContainer.add(image);
        }

图像创建效果很好,除了我不知道如何在死后调用这些图像。我无法为他们设置 ID,我不知道这样设置 objectName 是否有效。

我没有收到任何错误,如果这可行,我如何从 QML 调用“image3”来移动它?我不想使用 c++。

【问题讨论】:

    标签: blackberry-10 blackberry-cascades objectname


    【解决方案1】:

    我自己找到了解决方案。首先我添加它以获得全局访问权限

    property list<ImageView> images
    

    然后我在数组中创建图像并将它们复制过来

    onCreationCompleted: {
       //you need a tmp variable, since you can't do that with property variant
       var imagesTmp = Array();
        for (var n = 0; n < 3 * numberOfTiles; n ++) {
            imagesTmp[n] = imageDefinition.createObject()
            imagesTmp[n].translationX = getX(n);
            imagesTmp[n].translationY = getY(n);
            drawContainer.add(imagesTmp[n]);
        }
        images = imagesTmp;
        images[3].translationX = 10; //as example, this works!
    }
    

    事实证明图像一直引用图像

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-25
      • 1970-01-01
      • 2012-06-08
      • 2020-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-29
      相关资源
      最近更新 更多