Выход из формы с помощью ModalResult

У меня есть куча форм, и я хочу автоматизировать их, чтобы они открывались и закрывались сами по себе.

Я знаю, как заставить их открываться (с помощью функции OnActivate), но я возникли проблемы с их закрытием.

Так, например, у меня есть

procedure TProgressForm.FormActivate(Sender: TObject);
begin
  inherited;
  if FModItem.IsInQueue then
    begin
      RunBtnClick(Self);
      ModalResult := mrOK;
    end;    
end;

, который запускает функцию. Я хочу закрыть окно после запуска функции, что и должно делать ModalResult.

(Я также пробовал добавить строку ModalResult в самый конец процедуры RunBtnClick, но это тоже не сработало)

и я создаю такую ​​форму:

ProgForm := TProgressForm.Create(Self, FModItem);
Self.Visible := False;
try
 if ProgForm.ShowModal = mrOK then
  begin
    Left := ProgForm.Left;
    Top := ProgForm.Top;
  end;

Мне удалось создать кнопки для закрытия формы, просто добавив mrOK к модальному результату в Object Inspector, но я не могу сделать это явно

Кто-нибудь может понять, почему это? s не работает?

Спасибо

14
задан KingKong 17 May 2011 в 19:58
поделиться