我正在拍攝一個項目的快照(通過ShaderEffectSource
和live: false
),但我有時(200箇中的1個)獲得空白快照。我正在根據這樣的信號拍攝快照:物品完成重新粉刷後,我可以收到通知嗎?
Image {
onStatusChanged: {
if (status == Image.Ready) {
snapshotter.makeSnapshot();
}
}
}
這只是一個整體上下文。我現在不會發布測試用例,因爲它是一個很大的應用程序,我還沒有隔離測試用例。這對未來的問題可能是重要的。
所以我不問「我的代碼中的錯誤在哪裏」。相反,我有一個簡單的問題,我認爲可以幫助我解決這個問題:
當物品完成重新粉刷後,我可以收到通知嗎?
理由:也許當我得到status == Image.Ready
,圖像僅具有加載,還沒有畫的加載數據到屏幕外表面。所以如果我想要的信號存在,我可以掛接到它而不是掛在Image.statusChanged
上。
注:我可以實現我自己的NotifyingImage
組件,它的工作原理是Image
但還暴露了一個repainted
信號。但我想知道是否有內置的方式。
相關問題:「Get notified when QQuickItem will need updating」。但是那裏的提問者知道什麼時候數據被更新,並且我詢問repainted
信號,這是發生在後面比他要求的東西。
這工作,並使相當多的意義。我對此有一些保留,但由於它工作得很好,我會留下來,直到它可能再次打破。感謝所有關於我的「qt」問題的幫助:) –
不客氣!你的問題總是一個有趣而有趣的挑戰:-) – derM