Вы можете использовать события OnCloseQuery формы.
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose:= true; //or not
ButtonCancelClick(Self);
end;
Если для ваших кнопок установлены свойства modalresult
, они также будут вызывать OnCloseQuery
, и этот код не будет работать. В этом случае используйте ответ Дэвида.