Q&A

  • 동적 콤포넌트 이벤트 알아내는 방법 없나요?
안녕하세요-델초보임

폼내에서

....

for i:=0 to 10 do begin

Chk[i] := TCheckBox.Create(Application);

Chk[i].Parent := Panel1;

Chk[i].Caption := '체크'+IntToStr(i);

Chk[i].Left := x * 50;

Chk[i].Top := y * 50;

Chk[i].Width := 30;

Chk[i].Visible := true;

Chk[i].Checked := false;

Chk[i].ParentColor := true;

Chk[i].OnClick := UseCheckBoxClick;

end;

로 체크박스를 만들고 이 체크박스가 Check에 사용자가 클릭했을때 이것이 true/false 되는것을 확인할 방법이 없나요 ?

아래의 프로시저에서 받아들이고 싶은데....



procedure TDiMan.UseCheckBoxClick(Sender: TObject);

var a:integer;

begin

a := xxxxxxx Sender.Tag;

end;



이 예의 xxxxx 부분을 어찌 처리해야 할지....... 고수의 한수 가르침을 요망합니다.



C++ Builder 에서는



if ((dynamic_cast(Sender))->Checked == true) CheckOn = 1;

else CheckOn = 0;



와 같이 가능한데... 델은 모르겠네요..







2  COMMENTS
  • Profile
    최용일 2000.03.09 12:32
    델파이에서도 C++처럼 타입캐스팅이 가능합이다...



    procedure TDiMan.UseCheckBoxClick(Sender: TObject);

    var a:integer;

    begin

    a := TCheckBox(Sender).Tag;

    end;



  • Profile
    청계산 2000.03.12 08:12
    최용일 wrote:

    > 델파이에서도 C++처럼 타입캐스팅이 가능합이다...

    >

    > procedure TDiMan.UseCheckBoxClick(Sender: TObject);

    > var a:integer;

    > begin

    > a := TCheckBox(Sender).Tag;

    > end;

    >

    이다지도 간단한 것을 ....

    고맙습니다.