关于TImage控件画图显示不完整的问题?
写程序的时候发现一个问题,我用Image1->Canvel->Brush填充整个Image1,Image1可以改变大小。
如果第一次显示出来的Image1区域较小,改变Image1的大小,使它变大,这时候虽然我用Image1->Canvas->Brush填充了整个Image1区域,但是只有一部分显示出来。
如果第一次显示出来的Image1区域较大,改变Image1的大小,使它变小,这时候我用Image1->Canvas->Brush填充了整个Image1区域,正常显示
这时为什么?
[解决办法]
改变 TImage 的大小并没有重新分析内存(画图的大小)
而是需要改变 Picture->Bitmap 的大小才重新分配内存的
if((NULL!=Image1->Picture) && (NULL!=Image1->Picture->Bitmap))
{
Image1->Picture->Bitmap->Width = Image1->Width;
Image1->Picture->Bitmap->Height = Image1->Height;
}