폼이 시작과 동시에 배열로 정의된 버튼을 여러개 생성하였는데..
막상 버튼을 만들고도..다음 사용법에 대해 전혀 모르겠습니다.
예를 들어..생성된 버튼에 대한 메소드를 첨가한다던가...
버튼이 여러개 생성되었을 경우 각각의 버튼에
이벤트를 넣어준다던가 하는 부분입니다.
아시는분은 간단히라도 답변해주시면 정말 고맙겠습니다.
아래 소스는 제가 배열을 이용하여 버튼을 생성한 과정입니다.
var
Form1: TForm1;
mybutton :array [1..25] of Tbutton;
implementation
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin
buttonsu := strtoint(edit1.text);
for i:=1 to buttonsu do
begin
mybutton[i] := TButton.create(self);
mybutton[i].parent := form1;
mybutton[i].height := 40;
mybutton[i].width := 100;
mybutton[i].caption := 'BUT ' + inttostr(i);
mybutton[i].left := 1;
mybutton[i].top := 1 ;
end;
end;
> 폼이 시작과 동시에 배열로 정의된 버튼을 여러개 생성하였는데..
> 막상 버튼을 만들고도..다음 사용법에 대해 전혀 모르겠습니다.
> 예를 들어..생성된 버튼에 대한 메소드를 첨가한다던가...
> 버튼이 여러개 생성되었을 경우 각각의 버튼에
> 이벤트를 넣어준다던가 하는 부분입니다.
>
> 아시는분은 간단히라도 답변해주시면 정말 고맙겠습니다.
> 아래 소스는 제가 배열을 이용하여 버튼을 생성한 과정입니다.
추가> type
추가> TForm1 = class(TForm)
추가> procedure TForm1.myButtonKeyDown(Sender: TObject; var Key: Word; Shift:
TShiftState);
>
> var
> Form1: TForm1;
> mybutton :array [1..25] of Tbutton;
>
> implementation
> procedure TForm1.Button1Click(Sender: TObject);
> var i:integer;
>
> begin
> buttonsu := strtoint(edit1.text);
>
> for i:=1 to buttonsu do
> begin
>
> mybutton[i] := TButton.create(self);
> mybutton[i].parent := form1;
> mybutton[i].height := 40;
> mybutton[i].width := 100;
> mybutton[i].caption := 'BUT ' + inttostr(i);
> mybutton[i].left := 1;
> mybutton[i].top := 1;
추가> mybutton[i].OnKeyDown := mybuttonKeyDown;
> end;
> end;
>
추가>procedure TForm1.myButtonKeyDown(Sender: TObject; var Key: Word; Shift:
추가> TShiftState);
추가>begin
추가> showMessage('Show');
추가>end;
추가부분 처럼 하면 이벤트가 생성은 됩니다.
하지만 저도 배열로 되어있는 버튼을 분해서 어떻게 이벤트를 발생시키는지는 모르겠네요.. 테스트해봤는데 에러만 나더라구여..
혹시..아시는분 계시면 저에게도 알려주세요..