Показать сообщение отдельно
  #1  
Старый 16.01.2015, 03:04
geniusbsd geniusbsd вне форума
Прохожий
 
Регистрация: 11.01.2015
Сообщения: 27
Версия Delphi: RAD STUDIO XE7
Репутация: 10
По умолчанию Незакрывется модальная форма

Добрый день
Возникла проблема с закрытием модальной формы авторизации

Файл проекта

Код:
program WorkShop;

uses
  Vcl.Forms,

  MainUnit in 'MainUnit.pas' {MainForm},
  LoginUnit in 'LoginUnit.pas' {LoginForm},
  DModuleUnit in 'DModuleUnit.pas' {DMForm: TDataModule};

{$R *.res}
 label
 rer;
 begin
CheckUserPaswd:

Application.CreateForm(TDMForm, DMForm);
if TLoginForm.Execute  then
  begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TMainForm, MainForm);
  Application.Run;
  end
  else
Application.MessageBox('Проверьте имя пользователя и пароль!', 'Ошибка авторизации',(MB_ICONWARNING));
goto CheckUserPaswd;
 end.

Функция вызова формы авторизации

Код:
class function TLoginForm.Execute: boolean;
begin
 with TLoginForm.Create(nil) do
try
Result := ShowModal = mrOk;
finally
   Free;
 end;
end;

На форме авторизации две кнопки ОК и Отмена
Кнопка ОК
Код:
//Проверка логина и пароля если true
 ModalResult := mrOk end
      else

      ModalResult := mrAbort;

На кнопку отмена и OnClose формы
Код:
Application.Terminate;

Так вот при нажатии кнопка отмена или закрытие формы
Форма авторизации закрывается, а на экран вылазит сообщение Проверьте имя пользователя и пароль! в бесконечном цикле.

Подскажите что я делаю не так?
Ответить с цитированием