Forum Delphi.cz

Delphi => Firemonkey => Téma založeno: raul 30-06-2021, 14:00:45

Název: Trik na tvorbu sestavy komponent
Přispěvatel: raul 30-06-2021, 14:00:45
Zdarec,
je nejaky trik, jak seskladat nekolik komponent visualne a udelat z nich komponentu ?

Resim si tu jeden visualizator, ktery obsahuje cca 50 komponent, a otevrene, psat to jako kod je des a hruza (zvlaste pri zmenach). Prvotni nastrel jsem delal jako form s tim, ze jsem si pak ten form rucne prevedl do zdrojaku (zamysleni: proc se vlastne form uklada jako text, misto primo jako zdroj??)

Nyni to potrebuju trochu dost prehrabat a jen create ma par set radku (par desitek komponent prevazne tshape potomku, ale i layouts, a par dalsich).

Tzn trik ? (Vytvorit to jako form a prehodit parenta ? Frames (docela se nedoporucovaly)).

Klasika FMX Windows aplikace, D10.3.3 CE
Název: Re:Trik na tvorbu sestavy komponent
Přispěvatel: Radek Červinka 30-06-2021, 15:11:14
Umel to budto https://www.mmx-delphi.de/ nebo CnPack.

Jinak ve FMX uspesne pouzivam "Vytvorit to jako form a prehodit parenta"
Název: Re:Trik na tvorbu sestavy komponent
Přispěvatel: raul 30-06-2021, 15:20:06
A ten trik vytvorit jako form a prehodit parenta - nema to nejaky sideefects, ktery je treba osefovat ?? (Mam jich tam asi 6 tech visualizatoru (v main okne, v prepinani pohledu, v konfiguracnim okne, atd - nastaveni si primarne sdili)
Název: Re:Trik na tvorbu sestavy komponent
Přispěvatel: Radek Červinka 30-06-2021, 15:51:50
Kód: Delphi [Vybrat]
  1. class procedure TfrmBasic.gDock(owner: TComponent; oParent: TControl; cl: TfrmBasicClass; var instance: TfrmBasic);
  2. var
  3.  x: Integer;
  4. begin
  5.   for x := 0 to oParent.ChildrenCount - 1 do  //xxxxxxxxx
  6.     TControl(oParent.Children[x]).Visible := False;
  7.  
  8.   if instance = nil then
  9.   begin
  10.     instance := cl.Create(owner);
  11.     instance.ltChild.Parent := oParent;
  12.   end;
  13.   instance.ltChild.Visible := True;
  14.   if assigned(instance.OnResize) then
  15.     instance.OnResize(instance);
  16. end;
  17.  

Ten TfrmBasic ma jako zaklad TLayout a s tim se pracuje - vse ostatni je pod nim, napsal jsem to uz davno a funguje to dobre, takze si nektere detaily nepamatuji, ale co si pamatuji, ze se do stejneho parent dokovalo x layoutu, s tim, ze vzdycky byl videt jen jeden (jak uzivatel stisknul tlacitko) - to je ten radek s tim xxxx. Zaroven to funguje tak, ze pokud tam uz je, tak se jen zviditelni. Jak to mam, tak to davam :-)
Název: Re:Trik na tvorbu sestavy komponent
Přispěvatel: raul 30-06-2021, 15:59:19
Diky