我的组件的代码是这样的:
import QtQuick 2.5
Item {
id: root
width: 315
height: 315
property bool active
Image {
id: srcImage
width: root.width
height: root.height
source: "/test.png"
y: root.active ? 0 : 300
}
ShaderEffectSource {
id: snapshotter
sourceItem: {
if(root.active) {
return srcImage;
} else {
// Work around a bug that causes the snapshotter to lose its
// contents. (see http://stackoverflow.com/a/43067294 )
return snapshotter;
}
}
width: root.width
height: root.height
live: root.active
recursive: sourceItem == snapshotter
textureSize: Qt.size(root.width, root.height)
y: live ? 300 : 0
}
}
我得到了这样的结果(并排破碎和不间断):
我找出了原因,我会直接将其作为答案发布。
答案 0 :(得分:1)
我必须确保组件的绝对坐标(窗口相对)是整数。修好了。