Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.25;
Скачать: CL | DM;

Вниз

создание формы   Найти похожие ветки 

 
DimonNew   (2004-02-11 12:36) [0]

У меня вопрос. Я создал аналог функции InputQuery, с добавлением своих компонентов на форму для пароля и логина. Вызываю свою функцию в ADOConnection.OnWillConnect. А открываю ADOConnection в OnCreate главной формы. При не правильном пароле или логине или нажатии кнопки отмена уничтожаю главную форму, в результате она уничтожается, но она на короткий момент показывается. Неужели нужно делать форму с паролем главной, чтобы проверять пароль и логин до создания главной формы? Хотелось бы проверить пароль и логин до создания главной формы, чтобы в случае неудачи вообще не создавать ее. Помигите, пожалуйста.


 
Amoeba   (2004-02-11 12:39) [1]

Создавай и показывай ее в *.dpr, а в случае неудачи вызывай Application.Terminate.


 
DimonNew   (2004-02-11 12:41) [2]

Я как раз Application.Terminate и использую.


 
Юрий Федоров   (2004-02-11 13:21) [3]

вариант 1
Application.ShowMainForm:=False;
вариант 2
вызывай функцию "ааналог InputQuery" в *.dpr в самом начале до каких-либо других действий
Если что-то не так - просто по if обойди строки
Application.Initialize... Application.Run


 
Тимохов   (2004-02-11 13:24) [4]


> Application.Initialize

Ну это то лучше не обхоидить имхо.
Вот Application.run обойти - милое дело


 
Sandman25   (2004-02-11 13:27) [5]

Application.Initialize;
// DataModule
Application.CreateForm(TdmDatabase, dmDatabase);
with dmDatabase do
begin
LoadIniStringsFromFile;
LoadAndSetConnectionParams;
// попытка соединения
if not Connect then
exit;
end;
Application.CreateForm(TFSprOperExe, FSprOperExe);
Application.Run;
end.

....
function TdmDatabase.Connect(TerminateApplication: boolean = true): boolean;
begin
repeat
try
TryConnect;
except
on E:ECancelledConnectionException do
begin
if TerminateApplication then
Application.Terminate;
Result := false;
exit;
end;
on E:Exception do
begin
Application.MessageBox(PChar(E.Message),
sConnectionErrorCaption, MB_ICONERROR);
if TerminateApplication then
Application.Terminate;
Result := false;
exit;
end;
end;
until Connection.Connected;
Result := True;
end;

procedure TdmDatabase.TryConnect;
begin
with Connection do
begin
Close;
Open;
end;
end;

// OnLogin
procedure TdmDatabase.ConnectionLogin(Database: TSQLConnection;
LoginParams: TStrings);
begin
if not GetLoginParams(LoginParams) then
begin
raise ECancelledConnectionException.Create("");
end;
end;


 
DimonNew   (2004-02-11 14:46) [6]

Спасибо!



Страницы: 1 вся ветка

Текущий архив: 2004.02.25;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.029 c
3-79682
chtr
2004-01-30 09:11
2004.02.25
Как изменить порт доступа к MSSQL.


14-80144
andreytha@nm.ru
2004-02-04 05:52
2004.02.25
Как стать сертифицированым специалистом за 5 минут


14-80161
F-man
2004-02-01 15:26
2004.02.25
Создание Wizard-a


1-79728
ceval
2004-02-14 12:17
2004.02.25
программа с использыванием dbf файлов


1-79877
Leech
2004-02-10 12:03
2004.02.25
нужна структура наподобие массивов....





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский