Q&A

  • Tcomponent 변수 사용할때..
제가 하고자 하는 건..



QuickReport에서 TQRLabel 컴포넌트를 찾아서..

그걸 TComponent형 배열로 넘겨준 뒤에(여기까진 했거든요..)



쿼리로 가져온 값을 그 컴포넌트에서 보여줄 수 있도록 하려고

하거든요...보통 TQRLabel 의 Onprint 이벤트를 쓰면 이 값을

Value값에 넣어주면 되는데 컴포넌트형 변수에는 어떻게 넣어

줘야할지 모르겠습니다..

아래는 제가 코딩한 것의 일부분인데요..

아래와 같이 하면 당연히 TComponent형과 TString형이

맞지 않아서 에러가 나거든요...컴포넌트형 변수에 값

넘겨주는 방법이 없을까요? 제가 처음부터 잘못생각한건가요?

가르쳐주세요..고수님들...*^^*



var

LabelArr: Array[200] of TComponent;

begin

....

LabelArr[45+i] := Query2.FieldByName('itemnm').AsString;

....

end;

1  COMMENTS
  • Profile
    최석기 2000.08.28 19:53
    안녕하세요..

    델파이세상(http://www.freechal.com/delphiworld)에 최석기입니다..



    당연히 TComponent에 String를 대입하면 타입이 틀리니까 에러가 발생하지요..



    님이 배열로 잡아서 넣은 콤포넌트가 TQRLabel이라면 담과 같이 해서 넣으면 되죠..



    var

    LabelArr: Array[200] of TComponent;

    begin

    ....

    (LabelArr[45+i] as TQRLabel).Caption := Query2.FieldByName('itemnm').AsString;

    ....

    end;





    azure wrote:

    > 제가 하고자 하는 건..

    >

    > QuickReport에서 TQRLabel 컴포넌트를 찾아서..

    > 그걸 TComponent형 배열로 넘겨준 뒤에(여기까진 했거든요..)

    >

    > 쿼리로 가져온 값을 그 컴포넌트에서 보여줄 수 있도록 하려고

    > 하거든요...보통 TQRLabel 의 Onprint 이벤트를 쓰면 이 값을

    > Value값에 넣어주면 되는데 컴포넌트형 변수에는 어떻게 넣어

    > 줘야할지 모르겠습니다..

    > 아래는 제가 코딩한 것의 일부분인데요..

    > 아래와 같이 하면 당연히 TComponent형과 TString형이

    > 맞지 않아서 에러가 나거든요...컴포넌트형 변수에 값

    > 넘겨주는 방법이 없을까요? 제가 처음부터 잘못생각한건가요?

    > 가르쳐주세요..고수님들...*^^*

    >

    > var

    > LabelArr: Array[200] of TComponent;

    > begin

    > ....

    > LabelArr[45+i] := Query2.FieldByName('itemnm').AsString;

    > ....

    > end;