Q&A

  • 메인폼 변경시에 실행이 안됩니다.
안녕하십니까?

매번 질문만 올리게 되네요. 실력이 좀 모자란 넘이라....^_^;

처음 프로그램 실행시 회사로고가 이미지로 뜨고 2초후에 패스워드 화면으로 진행됩니다.

사용자명과 패스워드 입력한후 확인하면 메인화면으로 들어가죠!

근데 프로그램 실행속도 향상을 위해서 회사로고 이미지 화면을 무시하고

패스워드 입력화면으로 바로 들어가게끔

project/option에서 메인 폼을 패스워드 입력화면 으로 선택한후 실행하니깐 패스워드 입력화면은 뜨는데 패스워드 입력후 확인하니깐

메인화면으로 들어가는게 아니라 바로 종료가 됩니다. 무신 이유인지...

데이타베이스 콤포넌트도 로고이미지 화면에서 패스워드 입력화면으로 옮긴후 실행시켰는데도 그러네요. 또 다르게 설정해 줄게 있는지 고수님들 갈켜주세용~~~

그럼 기다리고 있겠습니다. 수고하세여...

3  COMMENTS
  • Profile
    parkisu 2001.01.17 09:02
    제임스박 wrote:

    > 안녕하십니까?

    > 매번 질문만 올리게 되네요. 실력이 좀 모자란 넘이라....^_^;

    > 처음 프로그램 실행시 회사로고가 이미지로 뜨고 2초후에 패스워드 화면으로 진행됩니다.

    > 사용자명과 패스워드 입력한후 확인하면 메인화면으로 들어가죠!

    > 근데 프로그램 실행속도 향상을 위해서 회사로고 이미지 화면을 무시하고

    > 패스워드 입력화면으로 바로 들어가게끔

    > project/option에서 메인 폼을 패스워드 입력화면 으로 선택한후 실행하니깐 패스워드 입력화면은 뜨는데 패스워드 입력후 확인하니깐

    > 메인화면으로 들어가는게 아니라 바로 종료가 됩니다. 무신 이유인지...

    > 데이타베이스 콤포넌트도 로고이미지 화면에서 패스워드 입력화면으로 옮긴후 실행시켰는데도 그러네요. 또 다르게 설정해 줄게 있는지 고수님들 갈켜주세용~~~

    > 그럼 기다리고 있겠습니다. 수고하세여...



    안녕하세요.

    메인폼을 패스워드폼으로 하시면 안됩니다. 왜냐면 메인폼은 프로그램 실행중에 닫히면 안되기 때문이죠. 메인폼이 닫힌다는 것은 곧 프로그램이 종료되는 것과 같죠. 메인폼을 패스워드를 입력한 후에 나오는 폼으로 하시고, 프로젝트를 수정하여 패스워드를 체크한 후 메인폼으로 들어가게 하세요.



    아래는 프로그램 실행시 패스워드를 체크한 후 패스워드가 맞을 경우 메인폼으로 넘어가게 하는 예제입니다. 참고하세요.



    {프로젝트 소스}



    program Project1;



    uses

    Forms,

    Controls, //ModalResult를 체크하기위해 추가

    PasswordUnit in 'PasswordUnit.pas' {PasswordForm};

    MainUnit in 'MainUnit.pas' {MainForm}



    {$R *.RES}



    function IsValidUser:Boolean;

    begin

    PasswordForm:= TPasswordForm.Create(Application);

    try

    Result:= PasswordForm.ShowModal=mrOk;

    finally

    PasswordForm.Free;

    end;

    end;





    begin

    Application.Initialize;



    if IsValidUser then begin

    Application.CreateForm(TForm1, Form1);

    Application.Run;

    end;

    end.



    {PasswordForm}

    procedure TPasswordForm.LoginButtonClick(Sender:TObject);

    begin

    if PasswordEdit.Text='1234' then ModalResult:= mrOk

    else

    ShowMessage('비밀번호를 잘못 입력하셨습니다!');

    end;



  • Profile
    델초보 2001.01.16 18:36
    Project/Option에서 Main 폼을 바꾸셨으니까 당연히 메인폼이 안뜨죠..

    그건 다시 메인폼으로 바꾸세요...

    전 아직 스플래쉬 화면이나 DB연결 폼을 만들어서 연결하는 걸 해보지

    않아서 다르게 하는 방법이 있는줄은 잘 모르겠군요..



    그럼.. 즐코하시길..



    제임스박 wrote:

    > 안녕하십니까?

    > 매번 질문만 올리게 되네요. 실력이 좀 모자란 넘이라....^_^;

    > 처음 프로그램 실행시 회사로고가 이미지로 뜨고 2초후에 패스워드 화면으로 진행됩니다.

    > 사용자명과 패스워드 입력한후 확인하면 메인화면으로 들어가죠!

    > 근데 프로그램 실행속도 향상을 위해서 회사로고 이미지 화면을 무시하고

    > 패스워드 입력화면으로 바로 들어가게끔

    > project/option에서 메인 폼을 패스워드 입력화면 으로 선택한후 실행하니깐 패스워드 입력화면은 뜨는데 패스워드 입력후 확인하니깐

    > 메인화면으로 들어가는게 아니라 바로 종료가 됩니다. 무신 이유인지...

    > 데이타베이스 콤포넌트도 로고이미지 화면에서 패스워드 입력화면으로 옮긴후 실행시켰는데도 그러네요. 또 다르게 설정해 줄게 있는지 고수님들 갈켜주세용~~~

    > 그럼 기다리고 있겠습니다. 수고하세여...

  • Profile
    지영일 2001.01.16 19:20
    제 생각엔..

    Alt + p + v 하셔서(Menu - Project - view source)하시면

    실행순서를 알수 있을겁니다.

    스플래쉬 폼을 없애고..만약의 데이타 모듈을 쓰신다면 Main 폼보다 먼저

    뜨게 순서를 바꿔 줘보세요..

    밑의 있는건 참고 보시구요..도움이 되었으면 좋겠네요..

    고수님이 보시기에 틀린점이 있다면 다시 답변 해줄것을 믿으면서..

    좋은 하루 되십시요..



    // 스플래쉬 폼을 삭제후...

    Application.Initialize;

    Application.CreateForm(TDataFrm, DataFrm); // 데이타 모듈

    Application.CreateForm(TMainFrm, MainFrm); // 메인 폼..

    Application.Run;





    델초보 wrote:

    > Project/Option에서 Main 폼을 바꾸셨으니까 당연히 메인폼이 안뜨죠..

    > 그건 다시 메인폼으로 바꾸세요...

    > 전 아직 스플래쉬 화면이나 DB연결 폼을 만들어서 연결하는 걸 해보지

    > 않아서 다르게 하는 방법이 있는줄은 잘 모르겠군요..

    >

    > 그럼.. 즐코하시길..

    >

    > 제임스박 wrote:

    > > 안녕하십니까?

    > > 매번 질문만 올리게 되네요. 실력이 좀 모자란 넘이라....^_^;

    > > 처음 프로그램 실행시 회사로고가 이미지로 뜨고 2초후에 패스워드 화면으로 진행됩니다.

    > > 사용자명과 패스워드 입력한후 확인하면 메인화면으로 들어가죠!

    > > 근데 프로그램 실행속도 향상을 위해서 회사로고 이미지 화면을 무시하고

    > > 패스워드 입력화면으로 바로 들어가게끔

    > > project/option에서 메인 폼을 패스워드 입력화면 으로 선택한후 실행하니깐 패스워드 입력화면은 뜨는데 패스워드 입력후 확인하니깐

    > > 메인화면으로 들어가는게 아니라 바로 종료가 됩니다. 무신 이유인지...

    > > 데이타베이스 콤포넌트도 로고이미지 화면에서 패스워드 입력화면으로 옮긴후 실행시켰는데도 그러네요. 또 다르게 설정해 줄게 있는지 고수님들 갈켜주세용~~~

    > > 그럼 기다리고 있겠습니다. 수고하세여...