Q&A

  • mdi폼에서 child 생성시 질문입니다.
mdi폼에서 child가 잘 생성되고 있습니다.

    Form_book_lend := TForm_book_lend.Create(Application);
    Form_book_lend.show;

이런식으로 하니깐 잘 되더라구요..

그런데 이렇게 하니깐.. 버튼을 누를때마다
Form_book_lend 요것들이 계속 생기는 거예요..
생성된 것이 있다면 그것을 활성화 시키는 걸로 하고싶은데..

어떻게 해야할지 모르겠습니다.

가르쳐주세요.. 이궁..
3  COMMENTS
  • Profile
    홍성락 2003.04.17 21:11
    같은 프로젝트 내라면 간단히 assigned로 해보세요
    (내용생략 : 이곳에서 assigned로 검색해보시면 유사한것이 많이 나옵니다 거기서 정확히 확인해보세요...)
    if not(assigned(Form2)) then
           Form2 := TForm2.Create(nil);

    hsr////////////////////////////////////////
  • Profile
    고영건 2003.04.17 21:56
    감사합니다 ^.^

    답변보고 해결했습니다~ ^.^

    좋아요~
  • Profile
    별볼일없는 2003.04.17 20:55

    function  findform( form_name : string) : boolean;//선언


    function TMainForm.findform( form_name : string) : boolean;
    var
      i : Integer;
    begin
      for i := 0 to Screen.CustomFormCount -1 do begin
          if LowerCase(Screen.Forms[i].Name) = lowercase(form_name) then
            begin
              Result := true;
              exit;
            end;
      end;
      Result := false;
    //활성화 된 폼중에서 같은 이름이 있는지 체크
    end;

    버튼이나 메뉴 클릭시

      if findform('Form1') = false then//없으면 생성이고
        begin
          Form1 := TForm1.Create(self);
          Form1.show;
        end
      else
        begin//있으면 맨 앞으로 보내면 되겠죠
          Form1.BringToFront;
        end;