Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[9124] 이벤트 발생 우선 순위
가문의 영광 [] 839 읽음    2004-02-24 17:39

ActiveX 하나의 폼위에

퀵리포트, TClientSocket, Memo 콤포넌트를 올려 놓았습니다.

자체 정의된 프로토콜에 의해..

서버로 메세지를 보내고 다시..

패킷을 전송받습니다.

전송받은 패킷을 파싱해서..

메모 컴포넌트에 저장합니다.

그리고 showmessage로 메모 컴포넌트에 들어 있는 값을 출력해 보면..

정상적으로 출력되는 걸 확인 할 수 있습니다.

그런데..

퀵리포트의 NeedData 이벤트를 사용해서..

아래와 같이 코딩하면...

procedure TForm1.qrptNeedData(Sender: TObject; var MoreData: Boolean);
var
  i, j, k, l:integer;
begin

  if count >= Memo1.Lines.Count -1 then begin
     MoreData := true;

      for i := 0 to Memo1.Lines.count -1 do begin

        for j := 0 to 12 do
          for k := 0 to 24 do begin
            Dat1[j][k].Caption := Memo1.Lines.Strings[i];
          end;
      end;
  end else begin
     MoreData := false;
     //showmessage(IntToStr(Memo1.Lines.count));
  end;
  if Not MoreData Then
     count := 0;

end;

메모 콤포넌트에 값이 들어가 있지 않음을 확인할 수 있습니다.

제 생각엔 아마도..

TClientSocket 콤포넌트의 Connect 이벤트나 OnRead 이벤트보다..

퀵리포트 콤포넌트의 NeedData 이벤트가 먼저 발생해서 그런 것 같은데..

좋은 해결 방법이 없을런지요??

+ -

관련 글 리스트
9124 이벤트 발생 우선 순위 가문의 영광 839 2004/02/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.