gpt4 book ai didi

qt - Component.onCompleted 提示 "Non-existent attached object"

转载 作者:行者123 更新时间:2023-12-05 09:20:18 30 4
gpt4 key购买 nike

我有一个 QML 文件Foo.qml:

import NDDView 1.0

NDDView {
source: "nddcontent/Foo.uip"
Component.onCompleted: console.log("Yay!")
}

NDDView组件继承自QQuickFramebufferObject。当我在我的项目中编译和使用这个组件时,我得到了错误:

qrc:/Foo.qml:5 Non-existent attached object
  • 为什么会出现此错误?
  • 如何才能在我的组件上运行“设置”代码?

以防万一,我的真实组件看起来更像这样:

NDDView {
property var paths: ([])
property int items: 20
property string prefix: "foo"
Component.onCompleted: {
for (var i=items;i--;) paths.push(prefix+i);
}
}

我试图在实例化组件时按程序填充数组。如果没有 Component.onCompleted 有更好/替代的方法来执行此任务,我很乐意改用它。

最佳答案

Component QML Type类型由 QtQml 注册模块,并且出于向后兼容性和方便的原因,也由 QtQuick模块。为了使类型可用,您必须导入这些模块中的任何一个。因此,在使用 Qt 5 编写 QML 应用程序时,大多数 .qml 文件以以下之一开头:

import QtQuick 2.0 // or later

import QtQml 2.0 // or later

最新的可用版本取决于您使用的 Qt 版本,以及您希望支持的旧 Qt 版本。如果您使用最新版本中引入的属性或方法,则必须导入最新版本(记录在每个 QML 类型的开头)。

关于qt - Component.onCompleted 提示 "Non-existent attached object",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38271475/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com