Q&A

  • 콤퍼넌트 변수처리 과정에서...


var

i : integer;

ii : String;

begin

For i:= 1 to 5 do

ii := IntToStr(i);

begin

With FindComponent('QRLG'+ii) as TQRLabel do Caption := k(i);

// 밑에 문장에 문제가 있어요......//

// QRLabel값만 찾아서 계산만 해주면 되는데... 어떻게 할 방법이 없나요??//

With FindComponent('QRLT'+ii) as TQRLabel do Caption :=

IntToStr(StrToInt(With FindComponent('QRLS'+ii) as TQRLabel do Caption)-

StrToInt(With FindComponent('QRLG'+ii) as TQRLabel do Caption));

end;

end;



부탁드립니다...



2  COMMENTS
  • Profile
    허준 2000.12.01 03:12
    반갑소 어이! 허준이라 하오.

    처리 방식이 잘못 된것같소.

    With FindComponent('QRLG'+ii) as TQRLabel do Caption := k(i);

    위와 같이 하면 에러날 확률이 있소.

    먼저 as용법을 쓰려먼 먼저 is로 Typ Checking을해야하오.

    var

    lni : Byte;

    begin

    for lni : 0 to Self.ComponentCount - 1 do

    begin

    if (Components[lni] is TQRLabel) Then // is로 먼저 Type Check

    if (Components[lni] As TQRLabe).Caption := 여기에 값넣기 // Type Casting

    end;

    end;

    부디 도움이 되었으면 하오.

    어허 탕약 쫄겠네...

  • Profile
    고유진 2000.12.01 17:52
    허준 wrote:

    > 반갑소 어이! 허준이라 하오.

    > 처리 방식이 잘못 된것같소.

    > With FindComponent('QRLG'+ii) as TQRLabel do Caption := k(i);

    > 위와 같이 하면 에러날 확률이 있소.

    > 먼저 as용법을 쓰려먼 먼저 is로 Typ Checking을해야하오.

    > var

    > lni : Byte;

    > begin

    > for lni : 0 to Self.ComponentCount - 1 do

    > begin

    > if (Components[lni] is TQRLabel) Then // is로 먼저 Type Check

    > if (Components[lni] As TQRLabe).Caption := 여기에 값넣기 // Type Casting

    > end;

    > end;

    > 부디 도움이 되었으면 하오.

    > 어허 탕약 쫄겠네...



    제가 묻고자 하는 질문은요....

    QRLg1 := 1

    QRLg2 := 2

    QRLG3 := 3 이런식으로 라벨이름을 변수로만들어서 증가시켜서 값을 넣구요...



    이런식으로 들어간 라벨과 라벨을 계산해줄수 있는 방법을 알고싶습니다...

    예로 QRLg(i+1) := QRLG(i)-QRLb(i+1) 이런식으로요...