简单问题:请问如何清空TBitmap中的内容?(100分)

  • 主题发起人 主题发起人 shang_yan
  • 开始时间 开始时间
S

shang_yan

Unregistered / Unconfirmed
GUEST, unregistred user!
代码如下:
ABitmap:=TBitmap.create;
ABitmap.loadfromFile('c:/temp.bmp');
这时ABitmap中已有内容,我此时需要清空ABitmap中的内容,怎么做?由于程序需要,不能采用ABitmap.free的方式来清空,因为我还需要保留ABitmap对象,只是不想其中有数据。
盼高手指教。
 
ABitmap.Assign(nil) 或者ABitmap := nil;
 
自己解决问题了
是freeImage.
 
哇,好拿的分又被andy263抢先了!唉
只能说同意楼上的
 
我还是没有解决问题
不论是用ABitmap:=nil 还是自己找到的ABitmap.FreeImage方法,执行这两条语句后,均没有发现程序占用内存减少。
请再赐教!!
 
abitmap没释放 内存当然不减少
 
To andy263:
我就是想在不释放ABitmap的情况下,使ABitmap中的内容为空,即恢复到未LoadFromFile时的状态。有可能实现吗?
类似于TMemoryStream.clear的做法。
 
:= nil;只能释放指针 不能释放内存
你只能通过 free 再create实现。

或者可以考虑load一个很小的bmp试试
 
这倒是一个很妙的办法!!
虽然我没试,但还是给分!
 
接受答案了.
 
后退
顶部