假設有如下frame窗體 : fromframe,levelframe
一、如果需要根據類名動態生成它們,先在各frame窗體的pas中註冊它們各自的類。
如下:initialization
registerclass(tfromframe);
initialization
registerclass(tlevelframe);
二、在呼叫者的pas中,引用它們
如:uses ufromframe, ulevelframe;
三、取得類名
四、根據類名動態生成frame窗體
procedure
lp_showframe(framename:string);
type
tframeclass
=class
oftframe;
varframeclass:tframeclass;
fframe:tframe;
begin
iffframe
<>
nilthen
fframe:
=nil
;frameclass :
=tframeclass(findclass('t
'+framename));
fframe :
=frameclass.create(self);
with
fframe
dobegin
parent :
=tab_detail;
visible :
=true;
top :=40
;font.name :='
宋體';
font.size :=9
;end;
end;
五、呼叫方法:
lp_showframe(framename);
根據窗體名稱動態建立窗體
unit unit1 inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,stdctrls,buttons,comctrls,db,adodb type tform1 clas...
C 實現反射 根據類名動態建立物件
和網上大多數實現一樣,這裡也是採用工廠方法來實現物件的動態建立。大致原理為,建立乙個單例工廠類,其中維護乙個map 類名 物件建立函式 建立物件時,傳入類名,然後根據此類名查詢出建立函式,最後建立物件。採用這種方式,有乙個關鍵問題,便是在工廠中註冊類名。我們的辦法是針對於每乙個類 class 定義乙...
sqlalchemy根據表名動態建立model類
sqlalchemy根據表名動態建立model類 作用如題,直接上 吧,另外還支援 copy一張表的表結構,新建表並獲得model物件 coding utf 8 import traceback from sqlalchemy import biginteger,column,datetime,in...