DELPHI FAQ: Как динамически прочитать информацию о классе


Как динамически прочитать информацию о классе
Previous  Home  Next




procedure
 TForm1.FormCreate(Sender: TObject);
begin

  {This only works for classes registered using RegisterClass}

  RegisterClasses([TButton, TForm]);
end
;


procedure
 TForm1.Button1Click(Sender: TObject);
var

  CRef: TPersistentClass;
  PTI: PTypeInfo;
  AControl: TControl;
begin

  CRef := GetClass('TButton'
);
  if
 CRef <> nil then
  begin

    AControl := TControl(TControlClass(CRef).Create(Self));
    with
 AControl do
    begin

      Parent := Self;
      Width := 50
;
      Height := 30
;
    end
;
    Inc(Id);
  end

  else

    MessageDlg('No such class'
, mtWarning, [mbOk], 0);
end
;


Взято из http://www.lmc-mediaagentur.de/dpool





DELPHI FAQ




EOMY TOP 100      Рейтинг@Mail.ru      Rambler's Top100