±ÍÇÏ´Â ¼Õ´Ô À̽ʴϴÙ
·Î±×ÀÎ
ȸ¿ø°¡ÀÔ
  
  µ¨¸¶´ç °ø½Ä ÀºÇà°èÁÂ
  ÇϳªÀºÇà 227-910235-83607
  ¿¹±ÝÁÖ ÀÌ»ó±¹(¿î¿µÁø)
ÇÁ·ÎÁ§Æ® °Ô½ÃÆÇ
ÅõÇ¥°Ô½ÃÆÇ
µ¨¸¶´ç¼Ò°³
±âÃʺÎÅÍ È°¿ë±îÁö! µ¨ÆÄÀÌ ±³À° - µ¥ºê±â¾î
Áú¹®°ú ´äº¯ Áú¹®°ú ´äº¯ ÀÔ´Ï´Ù.
±Û³»¿ë - Áú¹®°ú ´äº¯
 [´äº¯]°´Ã¼(?)¸¦ º¹»çÇÏ·Á°í ÇÕ´Ï´Ù. ¾î¶»°Ô ÇؾßÇϳª¿ä?
À强ȣ
(À强ȣ)
2010-02-17 ¿ÀÀü 2:24:35
2413ȸ Á¶È¸


µî·ÏµÈ ÆÄÀÏÀÌ ¾ø½À´Ï´Ù.


¾îÁ¦ ´ñ±Û ´äº¯À¸·Î RTTI¸¦ ÀÌ¿ëÇÏ¿© Çغ¸¶ó°í ¸»¾¸µå·È´Âµ¥¿ä



À۳⠼¼¹Ì³ª ÀڷḦ ÂüÁ¶ÇÏ¿©

http://www.delmadang.com/community/bbs_view.asp?bbsNo=21&bbsCat=0&st=C&keyword=RTTI&indx=416880

¹æ±Ý °£´ÜÈ÷ ±¸ÇöÇØ º¸¾Ò½À´Ï´Ù.



À½...

Owner¿Í ParentÁ¤º¸¸¦ copy°¡µÇÁö ¾ÊÀ¸¸ç

Panent¸¦ ´Þ¸®ÇØÁà¾ß È­¸é¿¡ º¸À̱⠶§¹®¿¡ 

¾Æ·¡ ¿¹Á¦¿¡¼­´Â Owner¸¦ ¶È°°ÀÌ ÇØÁáÁö¸¸ Parent´Â ´Þ¸®ÇØÁá½À´Ï´Ù.



´Ù¸¥ ¸ðµç Property´Â ¶È°°ÀÌ copyµË´Ï´Ù.



 




  

procedure CopyControlProperty( OrgCtrl: TControl;DestCtrl: TControl);

var

  I,PropCount: Integer;

  PropList: PPropList;

  PropInfo: PPropInfo;

  TypeInfo: PTypeInfo;

begin 

  if(OrgCtrl.ClassType <> DestCtrl.ClassType)then Exit;



  PropCount := GetTypeData(OrgCtrl.ClassInfo)^.PropCount;

  if PropCount > 0 then

  begin

    GetMem(PropList, PropCount * SizeOf(Pointer));

    try

      GetPropInfos(OrgCtrl.ClassInfo, PropList);

      for I := 0 to PropCount - 1 do

      begin

        PropInfo := PropList^[I];

        if PropInfo = nil then Break;

        if IsStoredProp(OrgCtrl, PropInfo) and Assigned(PropInfo^.SetProc) then

        begin

          TypeInfo := PropInfo^.PropType^;

          case TypeInfo^.Kind of

            tkInteger, tkChar, tkWChar, tkEnumeration, tkSet:

              begin

                SetOrdProp(DestCtrl, PropInfo.Name, GetOrdProp(OrgCtrl, PropInfo));

              end;

            tkFloat:

              begin

                SetFloatProp(DestCtrl, PropInfo.Name, GetFloatProp(OrgCtrl, PropInfo));

              end;

            tkString, tkLString, tkWString:

              begin

                SetStrProp(DestCtrl, PropInfo.Name, GetStrProp(OrgCtrl,<