大家快来看,为什么这个小的代码执行以后不能得到预想的图形,高手解答!!+20(20分)

  • 主题发起人 主题发起人 qingniao
  • 开始时间 开始时间
Q

qingniao

Unregistered / Unconfirmed
GUEST, unregistred user!
for j:=0 to 145 do
with image1.Canvas do
begin
Brush.Color:=clgreen;
Pen.Width:=1;
LineTo(image1.Left+146-j,image1.Top+36);
moveto(image1.Left+146-j,image1.Top+byterecieve[j] div graphicscale);
end;
 
你的顺序错误,应先MoveTo到一个开始点,再调用LineTo画一条
线到终止点
 
byterecieve
graphicscale
真不象话,这两个是什么东西?
 
问题解决,呵呵,三楼的我跟您解释以下
byterecieve//代表接受到的数据大小
graphicscale//代表在绘图区每一高度代表的数据量
byterecieve[j] div graphicscale//表示要绘图的高度
 
这种结果肯定是在开始和结束时分别多画一条线和少画一条线。
青鸟,为什么这么耳熟呢?
 
呵呵,北大青鸟哦,呵呵,我叫这个名字几乎和它是同步的哦
 
后退
顶部