Q&A

  • 한개의 폼이 생성되 있다면 다른폼을 열수 있는 방법
안녕하십니까?
용일님의 조언으로 메모 전달하는 방법을 미리 폼을 생성해
놓고, 메세지가 왔을때, 그폼을 띄우는 방향으로 프로그램을 진행하고
있습니다.
그런데,첫번째 메모가 와서 준비된 폼이 사용되고, 다른 메모가 오면 2번째 폼을 생성하려고 합니다. 제가 아래와 같이 했는데, 잘 되지 않네요.
소스를 보시고, 조언좀 해주세요.

procedure TfmReceiver.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
begin
  if TfmShow = nil then // 첫번째 폼이 떠 있으면 2번째 폼을 사용
    begin
      try
        fmShow2 := TfmShow2.Create(Self);
        fmShow2.ShowModal;
      finally
        fmShow2.Free;
      end;
    end
  else                        // 첫번째 폼이 사용되지 않으면 그냥 사용
    begin
      try
        fmShow := TfmShow.Create(Self);
        fmShow.ShowModal;
      finally
        fmShow.Free;
      end;
    end;
end;
  즉, 첫번째 폼이 사용되고 있으면 2번째 폼을 사용하려고 하는 의도 입니다.
도와주세요 ^^*
1  COMMENTS
  • Profile
    박상기 2002.09.19 04:48
    procedure TfmReceiver.ServerSocket1ClientRead(Sender: TObject;
      Socket: TCustomWinSocket);
    begin
      if fmShow = nil then // 첫번째 폼이 떠 있으면 2번째 폼을 사용
        begin
          try
            fmShow2 := TfmShow2.Create(Self);
            fmShow2.ShowModal;
          finally
            fmShow2.Free;
            frmShow2 := nil;
          end;
        end
      else                        // 첫번째 폼이 사용되지 않으면 그냥 사용
        begin
          try
            fmShow := TfmShow.Create(Self);
            fmShow.ShowModal;
          finally
            fmShow.Free;
            fmshow := nil;
          end;
        end;
    end;

    으로 함 해보세요... 테스트는 안 해봤어요