Q&A

  • SpeedButton을 동적생성하는 방법을 알고 싶어요
현재 폼이 아닌 다른 폼에 SpeedButton을 동적으로 생성하려고 합니다.

이렇게 생성된 SpeedButton 에 그림두 넣을려구 하는데 이게

클릭할때마다 변해야 되거든요... 어떻게 해야할지...

알려주시면 백골인 난망하겠습니다.

1  COMMENTS
  • Profile
    박정일 1999.08.27 22:49
    나희정 께서 말씀하시기를...

    > 현재 폼이 아닌 다른 폼에 SpeedButton을 동적으로 생성하려고 합니다.

    > 이렇게 생성된 SpeedButton 에 그림두 넣을려구 하는데 이게

    > 클릭할때마다 변해야 되거든요... 어떻게 해야할지...

    > 알려주시면 백골인 난망하겠습니다.



    부산사는 사람입니다.



    아래와 같이 하고

    OnClick Event에 자신이 만든 Event용 함수를 넣으면 되겠지요.

    Create로 생성된 버턴은 Parent로한 Form이 Destroy될 때 자동으로

    소멸됩니다.



    procedure CreateSpeedButton(Target : TForm; nTop,nLeft,

    nHeight,nWidth : Integer;

    sCaption , BMPFile : string );

    var

    NewBtn : TSpeedButton;

    begin

    NewBtn := TSpeedButton.Create(nil);

    with NewBtn do begin

    Parent := Target;

    Top := nTop;

    Left := nLeft;

    Height := nHeight;

    Width := nWidth;

    Caption := sCaption;

    Glyph.LoadFromFile(BMPFile);

    OnClick := Target.OnClick; // 요놈은 자신이 미리 만들어 두어야지요.

    Show;

    end;

    end;



    procedure TForm1.Button1Click(Sender: TObject);

    begin

    CreateSpeedButton(Form2, 10,10,50,150,'New Button',

    'c:windows이집트.bmp');

    end;