我有问题。希望大家能帮助我!我的英语不好,希望大家对不起。
我有一个图表视图和一个水平滚动条。当水平滚动条在x轴上更改时,下一个数组中的点将在图表视图上绘制。我有一个图表视图和一个水平滚动条。当水平滚动条在x轴上更改时,下一个数组中的点将在图表视图上绘制。我想捕获(grabtoImage)所有图表视图,包括那些未在屏幕上显示的视图,它仅在将滚动条更改为多幅图像时显示。*例如:屏幕绘制60点(计时器60s)。当计时器为180秒时,将捕获3张图像。
我希望人们可以向我建议解决方案,以解决我的问题。非常感谢大家!
我的源代码: 在图表视图上绘制矩形:
Rectangle{
id: recZoom
width: 3
height: parent.height
MouseArea {
id: mouseLeft
anchors.fill: parent
cursorShape: Qt.SizeHorCursor
drag.target: parent
drag.axis: Drag.XAxis
onMouseXChanged{
if(drag.active) {
if(DisplayMain.ValueAxisX.min > 0){
// draw point to chart view
// cal position min max of scroll bar
}
}
}
}
}
创建ShaderEffectSource可从缩放矩形获取数据
ShaderEffectSource{
id: shaderZoom
width: recZoom.width
height: recZoom.height
live: false
opacity: 0
smooth: true
}
grabtoImage shaderzoom
if(extendFile === "pdf"){
shaderZoom.live = true;
shaderZoom.scheduleUpdate();
shaderZoom.grabToImage(function(result) {
result.saveToFile("something.png");
});
}