sznray 2015-08-25 09:14 采纳率: 0%
浏览 1698

把大图片分成四张小图片,定义了一个TBitmap指针数组,循环LoadFromFile,执行报错!

for(height=ImageHeight;height<=Image1->Height;height+=ImageHeight)
for(width=ImageWidth;width<=Image1->Width;width+=ImageWidth)
{
Application->ProcessMessages();
if(IdChange == true)
{
for(i;i>=0;i--)
delete pBitmap[i];
//lbTis->Caption = "";
return;
}
lbTis->Caption = "正在加载图片...";
String filename = DataModule5->adoqryPicture->FieldByName("name")->AsString;
String pathheader = "F:\";
String path = pathheader+ filename;
pBitmap[i] = new Graphics::TBitmap();
pBitmap[i]->LoadFromFile(path);

            SrcRect = Rect(0,0,pBitmap[i]->Width,pBitmap[i]->Height);
            DstRect = Rect(width-ImageWidth,height-ImageHeight,width,height);
            Image1->Canvas->CopyRect(DstRect,pBitmap[i]->Canvas,SrcRect);
            DataModule5->adoqryPicture->RecNo++;
            i++;
            //delete pBitmap;
        }

进入第二次循环时会报错“存储空间不足,无法执行该命令”

  • 写回答

1条回答 默认 最新

  • threenewbee 2015-08-25 23:39
    关注

    先要调用deleteobject删除位图对象,再delete
    另外你的delete都不配对,或者你的代码不完整,有内存泄漏。检查下

    评论

报告相同问题?

悬赏问题

  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?