如何清除.cpp中声明的位图,如下所示:
Graphics::TBitmap * Bitmap1 = new Graphics::TBitmap;
我发现的所有示例都是针对Firemonkey的,那里似乎很简单
MyBitmap = new TBitmap(0,0);
...
MyBitmap->Clear(claWhite);
或
MyBitmap->ClearRect(MyRect);
但是Clear()和ClearRect()不是VCL中TBitmap的成员
我希望我应该delete Bitmap1;
才能清除它,但是然后如何重新声明它,以便它对于表单中的所有方法仍然是全局的?
谢谢。
答案 0 :(得分:2)
您不需要删除并重新创建TBitmap
。只需在其顶部绘制一个新图像即可,例如,使用其Canvas->FillRect()
方法(实际上是FMX示例正在做的事情),例如:
Bitmap1->Brush->Color = clWhite;
Bitmap1->Canvas->FillRect(Rect(0, 0, Bitmap1->Width, Bitmap1->Height));