24-10-2018, Saat: 14:44
Merhaba Arkadaşlar,
Bir projede BusinnesSkinForm Kullanıyorum. Kullananlar bilirler ki her BsskinForm elemanlarını forma koyunca özelliklerinden "SkinData" özelliğine "TbsSkinData" bileşenini göstermek gerekiyor. Yoksa tema çıkmıyor.
Ben bunu toplu olarak yapmak istiyorum. Aşağıdaki gibi bir kod yazdım ama başarılı olamadım. Kodu Create olayına bağladım. Nerede Hata Yaptığımıda anlamadım.
TbsSkinData bileşenim TemaData dır.
Bir projede BusinnesSkinForm Kullanıyorum. Kullananlar bilirler ki her BsskinForm elemanlarını forma koyunca özelliklerinden "SkinData" özelliğine "TbsSkinData" bileşenini göstermek gerekiyor. Yoksa tema çıkmıyor.
Ben bunu toplu olarak yapmak istiyorum. Aşağıdaki gibi bir kod yazdım ama başarılı olamadım. Kodu Create olayına bağladım. Nerede Hata Yaptığımıda anlamadım.
TbsSkinData bileşenim TemaData dır.
uses TypInfo; procedure TAnaForm.SkinAtama; var ElemanSayisi: Integer; ElemanObject: TObject; ElemanControl: TControl; Elemaninfo: PPropInfo; begin for ElemanSayisi := 0 to ComponentCount - 1 do begin ElemanObject := AnaForm.Components[ElemanSayisi] as TObject; if ElemanObject is TControl then begin ElemanControl := (AnaForm.Components[ElemanSayisi] as TControl); Elemaninfo := GetPropInfo(ElemanControl.ClassInfo, 'SkinData'); if Assigned(Elemaninfo) then SetStrProp(ElemanObject, 'SkinData', 'TemaData'); end; ElemanControl.Refresh; end; end;