Q&A

  • 에러:Cannot focus a disabled or invisible window
안녕하세요 이인수입니다.

항상 이곳에서 막혔던 부분을 풀어가고 있는 학생입니다.
^^;

그냥 로그인폼 하나 만들구...

그담에 아이디 비번 맞으면 새창 하나 띄웠거든요..

새창에는 폼만 생성했지 아직 아무것도 추가를 안했어요.

그런데

Project Backup.exe raised exception class EInvalidOperation with message 'Cannot focus a disabled or invisible window'. Process stopped. Use Step or Run to Continue.

이런 에러가 나요...

그리고 다시 F9를 누르면..

Cannot focus a disabled or invisible window

이 메시지가 뜨고는 실행창은 뜨거든요?

무엇이 문제인지 답답하네요..

답변좀 부탁드릴게요...



그럼 ...


좋은 하루 보내세요.



                 매일매일 즐거운 하루가 되길... :)

6  COMMENTS
  • Profile
    백수현 2002.02.22 20:59
    소스가 없어 정확한 답변이 될지 모르겠지만..
    님이 만든 로긴창이 비번이 맞으면 폼 속성을 Hide시키지 않나요?
    setfocus가 hide되어있는 객체에 걸리면 그 에러메세지가 나옵니다.
    참고가 되셨기를...

  • Profile
    이인수 2002.02.22 21:07
    안녕하세요 이인수입니다.

    답변 감사합니다.

    밑에 소스는요... 아이디 비번 입력하고 ok버튼 눌렀을때 프로시저부분입니다.

    여기서 뭐가 잘못된거 있나요?

    답변좀..^^:

    그럼...


    ---------------------------------------------------------------------
    procedure TfmLogin.bnOKClick(Sender: TObject);
    var
       sID, sPasswd : string;
       iCount : integer;
    begin
       sID := eID.Text;
       sPasswd := ePassword.Text;

       qryLogin.close;
       qryLogin.sql.Clear;
       qryLogin.sql.Add(' select count(*) from AdminUser ');
       qryLogin.sql.Add(' where UserID = :p1 ' );
       qryLogin.sql.Add(' and UserPasswd = :p2 ' );
       qryLogin.ParamByName('p1').asstring := sID;
       qryLogin.ParamByName('p2').asstring := sPasswd;
       qryLogin.Open;

       iCount :=  qryLogin.Fields[0].AsInteger;

       qryLogin.close;

       if iCount > 0 then begin
          visible := false;
          fmDataBackup := TfmDataBackup.create(self);
          with fmDataBackup do begin
             showmodal;
             Free;
          end;
          close;
       end else begin
          showmessage('관리자 아이디, 비밀번호가 틀렸습니다. 다시 한번 확인하세요.');
          ePassword.Text := '';
          ePassword.SetFocus;
       end;

    end;


    ---------------------------------------------------------------------
  • Profile
    성더기 2002.02.22 21:27

    // 여기 이부분이 문제인거 같네염
    // 이넘이 왜 드러가 있져?

    이하 생략...
  • Profile
    이인수 2002.02.22 23:31
    현제 창을 잠시 닫구요..

    fmDataBackup  이 창을 열려는 건데요...

    그렇게 하면 안되나요?흠...




  • Profile
    허일학 2002.02.22 20:55

    흔이 하는 실수인데......예를들어..
    Edit1.SetFocus;
    라고 코딩을 했는데....그부분이 Enabled := False 이거나 visible := False인
    경우에 말씀하신 에러가 나거든요....
    꼭~ 그런건 아니지만 참고하시면 도움이 되리라 생각 됩니다..
  • Profile
    이인수 2002.02.22 21:09
    답변감사합니다.

    setfocus를 사용한곳이 두곳인데요...

    둘다 프로퍼티는 다 enabled, visible 이 true로 되어있거든요...

    음냥.. 뭐가 또 문제가 될수 있을까요...ㅡ.ㅜ


    좋은 하루 보내세요..

    그럼...