如何跟踪项目在应用程序上的首次启动可见性 window

How to track the first launch visibility of an Item on app window

我正在使用 Qt 5.9.3。我有一个像这样的 QML Item

Item {
    id: root
    width : 400
    height: 700
}

如何跟踪项目首次出现在我的应用程序屏幕上的时间 window? onVisibilityChanged?

如何跟踪 MyQuickItem 的相同内容,如下所示:

// C++ definition
class MyQuickItem : public QQuickitem {
}

// QML side
MyQuickItem {
  id: some_id
}

我想完整的代码应该是这样的:

ApplicationWindow{
    visible: true
    onVisibilityChanged: {
        console.log("ApplicationWindow is ", visibility)
    }
    Component.onCompleted: {
        console.log("ApplicationWindow is onCompleted")
    }
    Item {
        id: root
        width : 400
        height: 700
        onVisibleChanged: {
            console.log("Item is ", visible)
        }
        Component.onCompleted: {
            console.log("Item is onCompleted")
        }
    }
}

显然 ApplicationWindowonVisibilityChanged 会在 visibility 属性 改变时触发,所以它会在您最小化并重新显示 window 时触发。由于你提到第一次可见,所以我认为你正在寻找Component.onCompleted