function TMyWin.CanClose: boolean; var reply : integer; begin CanClose := not IsDirty; if (isDirty) then begin Reply := MessageBox(HWindow,'Are you sure','File not saved',mb_YesNo + mb_IconQuestion); if (Reply = idYes) then begin isDirty := false; CanClose := true; end; end; end;