我在一个PageControl,然后再在上面动态建立TableSheet,再建立窗体与TableSheet之上,代码如下
申明:
frmProgramFile : TfrmProgramFile;
pgWinRect: TPageControl;住窗体创建子窗体的代码:
procedure TfrmMain.btnSendTaskClick(Sender: TObject);
var
  tab : TTabSheet;
begin
  if findForm('frmProgramFile')=false then
  begin
   try
    tab := TTabSheet.Create(pgWinRect);
    tab.PageControl := pgWinRect;
    tab.Show;
    frmProgramFile := TfrmProgramFile.Create(self);
    frmProgramFile.Parent := tab;
    frmProgramFile.Align := alClient;
    frmProgramFile.BorderStyle := bsNone;
    frmProgramFile.Show;
    tab.Caption := frmProgramFile.Caption;
   except
    //....
   end;
end;
子窗体想要关闭父控件,也就是上一级的TableSheet
procedure TfrmProgramFile.SpeedButton4Click(Sender: TObject);
begin
{  ClearWindows;
  self.Parent.Visible := FALSE;
  self.Close;
  self.Parent.Free;}
  或者:
  frmProgramFile.Parent.Free;
end;上面注释掉的地方也试过,的确能关闭父控件,但关闭之后,必报内存错误,哪位兄弟给指点一下?