Q&A

  • 배열로 Image 를 만들려면? (Self가 안되던데..)
배열로 버튼을 만들때는 TButton.Create(Self);

이렇게 해서 만들었는데

이미지를 만들려니깐 TImage.Create(Self);이렇게 하니깐 에러가 나네요.

답변 미리 감사드립니다.



3  COMMENTS
  • Profile
    구창민 1999.07.08 02:07
    서경철 께서 말씀하시기를...

    > 배열로 버튼을 만들때는 TButton.Create(Self);

    > 이렇게 해서 만들었는데

    > 이미지를 만들려니깐 TImage.Create(Self);이렇게 하니깐 에러가 나네요.

    > 답변 미리 감사드립니다.

    >



    서경철님 안녕하세요?



    Note: TComponent.Create is virtual in part to allow polymorphic instantiation of class references. This is critical to the streaming system and to the form designer. Do not forget to use the override directive when declaring a new component
  • Profile
    서경철 1999.07.12 20:10
    > TImage.Create메소드는 TComponents 에서 override 된 메소드이므로

    > 위와 같이 하셔도 동작되어야 합니다.

    > 어떤 에러가 났는지요?

    > 에러문을 올리시거나, 소스의 일부분이라도 올려보심이 어떨런지요?

    > 그럼..



    새로 어플리케이션을 만들고 배열을 써보니 되는데

    이상하게 제가 만들던 곳에선 안되네요...똑같이 했는데..

    아마도 다른 문제가 있는것 같습니다.

    답변에 감사드립니다.



    에러메세지는 아래와 같습니다.



    [Error] main.pas(69): Undeclared identifier: 'Self'



    69라인 : Img[N,M] := TImage.Create(Self);

  • Profile
    이정욱 1999.07.08 01:49
    음 이상하군요..

    당연히 되어야 하는데...

    쩝..

    전 이렇게 합니다.



    var

    i : integer;

    Image : array[0..9] of TImage;

    begin

    for i := 0 to 9 do

    begin

    Image[i] := TImage.Create(self);

    Image[i].Parent := Form1;

    //다음부터는 크기와 위치를 조정하는 곳~

    end;

    end;



    이렇게 생성 후 필요가 없어졌을 때는 꼭 Free를 해주세요.



    서경철 께서 말씀하시기를...

    > 배열로 버튼을 만들때는 TButton.Create(Self);

    > 이렇게 해서 만들었는데

    > 이미지를 만들려니깐 TImage.Create(Self);이렇게 하니깐 에러가 나네요.

    > 답변 미리 감사드립니다.

    >