如何在Timage中显示图像 (50分)

  • 主题发起人 主题发起人 liuzr
  • 开始时间 开始时间
L

liuzr

Unregistered / Unconfirmed
GUEST, unregistred user!
我在一个窗体上放了一个Timage控件,因为要在Timage上画很多东西。所以把Timage控件的width与heigh属性设的很大,即width=3880;heigh=10680,以上的单位为0.1mm.
此程序在Delphi4.0上运行通过,但过了一段时间再运行时,却提示出错“参数错误,后又对此程序重新编译运行,依旧出错。但我的程序及运行环境没变。并且把此程序放到别的机器上也不能运行。而这原来是正常的。
对此程序设置断点,跟踪发现在设置了Timage控件的width,heigh后,对Image的canvas的所有的操作都会产生异常。有时是参数错误,有时是“out of resource", 如对image 的canvas清空时:
with image1.canvas do
begin
brush.style:=bssolid;
brush.color:=clwhite;
fillrect(cliprect);
end;
brush.style:=bssolid
以上当程序运行时即会产生异常,可是这在最初调试时并没有错误,请指教。
 
width与heigh属性都是以pixel为单位的,你的0.1mm怎么设的?
以pixel为单位3880x10680>36M,而每个pixel还不只一个字节,你的内存吃的消吗
 
开这么大的HBITMAP不死才怪!
 
out of resource:资源耗尽,这种情况下并不是每次都死机的,加内存吧
 
干吗弄那么大?
 
用TBitmap对象来做图,TImage对象来显示(只取需要显示的部分)
TBitmap对象的长宽可以很大

 
Bitmap的长,宽都有限制吧?记得好象是4000X4000
 
别搞太大的图片
 
TBitmap的长宽又无限制我不知道,不过我开了一个10000*10000的Bitmap并作图也没出问题!
 
多人接受答案了。
 
后退
顶部