读书人

dialog的button事件中不能写this-gt;clo

发布时间: 2012-02-17 17:50:42 作者: rapoo

dialog的button事件中不能写this->close()
我的FormClose事件是删除Dialog 指针。 Vdlg 是一个对话框对象指针的向量。name和typename是对话框指针的字符串标记 我做的是聊天程序。
void __fastcall TChatsDlg::FormClose(TObject *Sender, TCloseAction &Action)
{
String title = this->Caption;
int pos = title.Pos("聊天");
String name = title.SubString(3, pos - 3);

if(frmMain->Vdlg.empty())
{
return ;
}
for(int i = 0; i != frmMain->Vdlg.size(); ++i)
{
if(frmMain->Vdlg[i].typeName == name)
{
if(!frmMain->Vdlg[i].typedlg->Memo1->Lines->Text.IsEmpty())
{
this->Memo1->Lines->SaveToFile(ExtractFilePath(Application->ExeName)+FormatDateTime("yyyymmddhhmmss",Now())+".log");
}
delete frmMain->Vdlg[i].typedlg;
frmMain->Vdlg.erase(frmMain->Vdlg.begin() + i);
break;
}
}
}

如题, 为什么一写就出现错误: Access violation at address 40107D8F in module ‘vcl60.bpl’ 。 read of address 01339188.


[解决办法]
解决了就好,明白了原因,继续提高

读书人网 >C++ Builder

热点推荐