Q&A

  • TImage동적생성시 에러가...
아주 간단한 코딩인데 에러가 나네요.
에러의 내용은 A Component Named Button1 already exists.이고요
소스는 아래와 같습니다.

답변좀 부탁 드릴께요

procedure TForm1.Button1Click(Sender: TObject);
var
    JpgImage : TJPEGImage;
    LoadImage : TImage;

begin
    JpgImage := TJPEGImage.Create;
    JpgImage.LoadFromFile('d:wooki.jpg');

    LoadImage.Create(Form1);
    LoadImage.AutoSize := True;
    LoadImage.Width := 400;
    LoadImage.Height := 400;
    LoadImage.Name := 'Img1';
    LoadImage.Left := 200;
    LoadImage.Top := 200;
    LoadImage.Picture.Assign(JpgImage);end;
    JpgImageg.Free;
end.
2  COMMENTS
  • Profile
    타락천사 2003.04.24 01:34
    안녕하세여. 타락임다..

    근본적으로 코딩에 문제가 있군요.

    TImage 를 동적생성해야 한다면 Button1Click() 이 아닌 TForm1.Create() 에서 생성하고 TFrom1.Close() 에서 해제 해야 할 겁니다.

    먼저 Componet Palette 에서 TImage 을 폼으로 드래그드롭하세요.

    그리고 아래와 같이 코드를 바꿉니다.

    procedure TForm1.Button1Click(Sender: TObject);
    var
        JpgImage : TJPEGImage;
    begin
        JpgImage := TJPEGImage.Create;
        try
            JpgImage.LoadFromFile('d:wooki.jpg');
            Image1.Picture.Bitmap.Assign(JpgImage);
        finally
            JpgImageg.Free;
        end;
    end;

    즐푸하세여..

    타락천사..
  • Profile
    김수경 2003.04.23 21:19

    procedure TForm1.Button1Click(Sender: TObject);
    var
        JpgImage : TJPEGImage;
        LoadImage : TImage;

    begin
        JpgImage := TJPEGImage.Create;
        JpgImage.LoadFromFile('d:wooki.jpg');

        LoadImage.Create(Form1);
        LoadImage.Parent := self; // self가 안되면 Form1으로 바꾸세요
        LoadImage.AutoSize := True;
        LoadImage.Width := 400;
        LoadImage.Height := 400;
        LoadImage.Name := 'Img1';
        LoadImage.Left := 200;
        LoadImage.Top := 200;
        LoadImage.Picture.Assign(JpgImage);
        JpgImageg.Free;
    end;