scanline的问题(50分)

  • 主题发起人 主题发起人 ayu310
  • 开始时间 开始时间
A

ayu310

Unregistered / Unconfirmed
GUEST, unregistred user!
各位打虾,我写的一个程序:
for i:=1 to image1.height-1 do
begin
p:=image1.picture.bitmap.scanline;
for j:=1 to image1.width-1 do
begin
……
end;
end;
可是大循环没有结束就出现scanline 的越界错误。( scanline index out of rang);
是什么原因?
 
循环变量 i 的上界错了,

不是image1.height-1,
应该是image1.picture.bitmap.height-1

image1.height是组件的高度,
而image1.picture.bitmap.height是组件所含位图的实际高度

image1的height不一定等于bitmap的height,所以可能发生越界错误
有空多交流!
 
还有一点要注意:
Image1.Picture.BitMap.PixelFormat := pf24 ;

 
多人接受答案了。
 
后退
顶部