// 執行時 修改delphi物件屬性, 以備不時之需
// 簡單的寫了幾個屬性, 已經夠用了。 請注意, 只能修改published屬性,
// 就是能夠出現在object inspector中的屬性
procedure setcmpntproperty(ownercmpnt:tcomponent; scomponent, sprop, spropvalue:string);
varacmpnt:tcomponent;
begin
acmpnt := ownercmpnt.findcomponent(scomponent);
if acmpnt=nil then exit;
setcmpntproperty(acmpnt, sprop, spropvalue);
end;
procedure setcmpntproperty(acmpnt:tcomponent; sprop, spropvalue:string);
begin
setobjectproperty(acmpnt, sprop, spropvalue);
end;
//procedure setobjectproperty(obj:tobject; sprop, spropvalue:string);overload;
varobjptypeinfo:ppropinfo;
begin
if obj=nil then
begin
showmessage('setobjectproperty: null object');
exit;
end;
objptypeinfo := getpropinfo(obj, sprop);
if objptypeinfo=nil then raise exception.create('invalid property:'+sprop);
// ttypekind = (tkunknown, tkinteger, tkchar, tkenumeration, tkfloat, tkstring, tkset, tkclass, tkmethod, tkwchar, tklstring, tkwstring, tkvariant, tkarray, tkrecord, tkinte***ce, tkdynarray);
case objptypeinfo^.proptype^.kind of
tkinteger:setordprop(obj, objptypeinfo, strtoint(spropvalue));
tkfloat:setfloatprop(obj, objptypeinfo, strtofloat(spropvalue));
tkstring, tklstring, tkwstring:setstrprop(obj, objptypeinfo, spropvalue);
tkenumeration:setenumprop(obj, objptypeinfo, spropvalue);
tkset:setsetprop(obj, objptypeinfo, spropvalue);
else
raise exception.create(''unsupported property type:'+sprop);
end;
end;
delphi 程式執行時移動控制元件
程式在執行時使用者需要對一些控制元件進行重新移動佈局,下次進入介面時顯示佈局後的 方法1 每移動控制元件時就把位置寫入ini檔案中 只需在控制元件的onmousedown事件寫如下 procedure tfmain.speedbutton4mousedown sender tobject butto...
Silk 執行時 控制元件 屬性
1.如果一個silk的識別物件是在執行時載入的某個屬性且無法事先定義,可以用動態tag識別來作一定的操作。e.g.我這裡的error dialog裡的error message是根據具體的頁面欄位報錯,所以我無法事先宣告此lable物件的tag值。2.我們首先用scripted.來重新識別物件。3....
在執行時修改ObjectDataSource的引數
在一個使用者查詢頁面有三個查詢分別查詢全部使用者,按名稱模糊查詢使用者和按照角色查詢使用者。這三個功能需要呼叫業務端三個不同的函式,它們的返回值一樣,都是資料物件集合sesgmembershipusercollection 使用gridview1來顯示查詢結果,objectdatasource1是資...
在執行時修改ObjectDataSource的引數
在一個使用者查詢頁面有三個查詢分別查詢全部使用者,按名稱模糊查詢使用者和按照角色查詢使用者。這三個功能需要呼叫業務端三個不同的函式,它們的返回值一樣,都是資料物件集合sesgmembershipusercollection 使用gridview1來顯示查詢結果,objectdatasource1是資...
執行時修改註解資訊
當時的需求是匯出的時候加一個title,然後用的是easyexcel,註解使用的是excelproperty,然後就懶嘛,不想一個個加了,所以直接改註解,上 功能描述 修改註解資訊 param t param title return void author lpj date 2022 01 05 ...