Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];

Вниз

Подскажите, где поставить проверку...   Найти похожие ветки 

 
NY152   (2002-01-15 09:59) [0]

Где поставить проверку и как чтобы при старте программы при неправильном введении кода программа бы не запускалась ?
Я попробовал на событие "onCreate" главной формы, но если ставишь там оператор "close" программа всё равно запускается =(((
Спасибо...


 
Turalyon   (2002-01-15 10:06) [1]

Поствь close на событие FormShow.


 
Владислав   (2002-01-15 10:30) [2]

В обработчике OnCreate:
Application.Terminate


 
kserg@ukr.net   (2002-01-15 12:33) [3]


У меня сделано как советует >Владислав:
в OnCreate после проверок вывожу сообщение юзеру
о том, что "лезет" без нужных прав, а затем
Application.Terminate обрывает загрузку проги,
но вот только главная форма всё равно дёргается
(что-то на экране мелькает).
Как это побороть?


 
AlexSV   (2002-01-15 12:36) [4]

Лучше всего в модуле проекта .dpr:

program Project1;

uses
Forms,
fLogin in "fLogin.pas" {LoginForm},
fMain in "fMain.pas" {MainForm},
// остальные модули ...,
;

{$R *.RES}

begin
Application.Initialize;
Application.CreateForm(TLoginForm, LoginForm);
if LoginForm.ShowModal = mrOK then begin
Application.CreateForm(TMainForm, MainForm);
// остальные модули ...,
Application.Run;
end else
Application.Terminate;
end.

Приблизительно так.
Писал с листа, так что если где не так, то пиши на Mail, подскажу.


 
Владислав   (2002-01-15 12:54) [5]

> kserg@ukr.net (15.01.02 12:33)

но вот только главная форма всё равно дёргается
(что-то на экране мелькает).


Application.ShowMainForm:=False;
Application.Terminate


 
kserg@ukr.net   (2002-01-15 13:10) [6]

>Владислав - спасибо за совет


 
olban   (2002-01-15 14:53) [7]

Не надо никаких Terminate, Это все равно, что ломать что-нибудь.
Все правильно, в модуле проекта создаем свою форму, типа проверки пароля, запускаем и проверяем результат. Если нас все удовлетворяет, то создаем основную форму и запускаем приложение, иначе не надо ничего делать, программа сама закроется, так как выполнять больше нечего. В примере выше надо просто еще сделать LoginForm.Free в любом случае, чтобы освободить от него память. Все


 
Boris   (2002-01-15 18:21) [8]

olban прав!

Я делаю следующим образом:

program KurtLaukel;

uses
Forms,
LaukelLagerstand in "LaukelLagerstand.pas" {fMainForm},
SetUser in "SetUser.pas" {fUser},

{$R *.RES}

begin
Application.Initialize;
Application.CreateForm(TfUser, fUser);
Application.CreateForm(TfMainForm, fMainForm);
Application.Run;
end.

В проекте первой появляется форма fUser
пользователь вводит свои аттрибуты. Проверяем.
если все окей то

fUser.Visible:=False; //просто ее с глаз долой
fMainForm.Show; //никаких терминате

если нехороший человек то просто

fUser.close

При окончании работы честным человеком. В модуле fMainForm
закрыть fUser

procedure TfMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
fUser.Close;
end;

И ВСЁ!!!!!!



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

Форум: "Основная";
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.005 c
3-8771
Reals
2002-01-05 19:37
2002.02.04
Как правильно сделать проверку в таблице...


1-8845
Eraser
2002-01-21 10:58
2002.02.04
Где sleep


3-8783
Андре
2002-01-03 15:17
2002.02.04
SQL Monitor


14-8978
tovSuhov
2001-12-13 09:45
2002.02.04
А вот такой анекдот...


3-8804
Potemkin
2002-01-03 09:55
2002.02.04
Вопрос





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский