vb实时曲线绘制 20
这个要用两个图片框。
autoredraw都设置成true。
一个隐藏,一个显示。
一个在背后画好,然后再显示出来。
用一个也可以,不过会闪。
当时间值小于图片宽度时,你应该知道怎么画。
当时间值大于图片框宽度时。
pic1.paintpicture pic1.image,0,0,pic1.scalewidth-1,pic1.scaleheight,1,0,pic1.scalewidth-1,pic1.scaleheight
'这个代码的作用是使图片框整个左移一个像素,右边空一个像素出来。
然后曲线的点就画在最后一个像素的位置上。
外面看,就是不停的左移了,有点像windows那个任务管理器里的。
记住。autoredraw设置成true
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
我一般的做法是,用两个图片框,一个隐藏,一个显示。图片框1的picture属性保存一个网格。
两个框框都一样大小。
隐藏的图片框里面,不停的循环画,这样。
pic1隐藏,pic2显示。
pic1的autoredraw必须ture,pic2可以不用,也可以是。
sub timer1_timer()
xpos=time_p mod pic1.scalewidth
time_p= time_p+1
pic1.paintpicture pic1.picture,xpos,0,pic1.scaleheight,xpos,0,1,pic1.scaleheight
'上面这句清楚原来的点,显示出网格
'pic1.line ...........................画你要的点或者线。
pic2.paintpicture pic1.image,0,0,pic1.scalewidth-xpos,pic1.scaleheight,xpos,0,pic1.scalewidth-xpos,pic1.scaleheight
'画前半部分
pic2.paintpicture pic1.image,pic1.scalewidth-xpos,0,xpos,pic1.scaleheight,0,0,xpos,pic1.scaleheight
'画后半部分
end sub
代码是我随便写的,没有试,有些地方可能有错,自己调试吧
这个是我写的。
就是你要的效果。
2023-08-15 广告