http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_tip&no=708
위에 포시팅 된 내용은 메소드 함수의 실제 이름을 가지고 할 경우입니다.
만약 실제 이름을 모를경우는 어떻게 할지 알아 봤습니다.
저는 이를 다음과 같이 봐꾸어 보았습니다.
void __fastcall TForm7::Button1Click(TObject *Sender)
{
TMethod Method;
Method = GetMethodProp(Button2,"OnClick");
if (Method.Code)
{
Method.Data = this;
TNotifyEvent BtnClick = *(TNotifyEvent *)&Method;
BtnClick(Sender);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm7::Button2Click(TObject *Sender)
{
Button2->Visible = !Button2->Visible;
}
//---------------------------------------------------------------------------
Button1 을 누르면 Button2 의 OnClick 을 호출하여 Button2 를 보이고 감추고 하는 코드 입니다.
이렇게 할 경우 특정 component를 Object 단위로 받아도 실행 가능 합니다.
감사 합니다.
참조: http://kdy.csitek.co.kr/254
|