永发信息网

vb实时曲线绘制

答案:3  悬赏:10  手机版
解决时间 2021-11-30 06:01
  • 提问者网友:临风不自傲
  • 2021-11-29 14:42
vb实时曲线绘制
最佳答案
  • 五星知识达人网友:上分大魔王
  • 2021-11-29 16: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
 
代码是我随便写的,没有试,有些地方可能有错,自己调试吧
 
这个是我写的。
 
就是你要的效果。
 

 
 
 
 

全部回答
  • 1楼网友:走死在岁月里
  • 2021-11-29 17:23
从下一个点开始重新画。
  • 2楼网友:西风乍起
  • 2021-11-29 17:06
推荐用tchart控件画图 很方便
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯