Код:
Application.ShowMainForm := False;
Помогло, спасибо.
Код:
function TFormLogin.Authorization(Users: TADOTable): boolean;
begin
dsUsers.DataSet := Users;
repeat
if ShowModal = mrOK then
begin
if dsUsers.DataSet.Locate('Login;Cash',
VarArrayOf([edLogin.Text, edCash.Text]), []) then
begin
dsUsers.DataSet.Edit;
if cbRememberMe.Checked = true then
Users.FieldByName('Remember').AsInteger := 1;
dsUsers.DataSet.FieldByName('LoginDate').AsDateTime := Now;
dsUsers.DataSet.Post;
Result := true;
end
else
begin
edCash.Clear;
if edLogin.Text = '' then
edLogin.SetFocus
else
edCash.SetFocus;
end;
end
else
Break;
until Result = true;
end;
Т.е. я как делаю: повторять попытки входа, пока пользователь жмёт ok. Как только ShowModal не равен mrOK цикл прерывается и вываливается с Result = False; что влечёт за собой Terminate.
Не нравится "break". Может как-то без этого можно обойтись?