Autor Téma: Rozhozená šířka panelů ve scrollboxu  (Přečteno 145 krát)

Offline Petr Shejbal

  • Nováček
  • *
  • Příspěvků: 4
  • Karma: 0
    • Verze Delphi: XE7 Profesional
Rozhozená šířka panelů ve scrollboxu
« kdy: 16-04-2018, 13:57:41 »
Dobrý den,

Mám projekt, ve kterém generuji komponenty za běhu.
Nageneruji si scrollbox a nastavím mu anchors na všechny strany.
Do scrollboxu dále nageneruji množinu objektů typu tpanel.
Pozice panelů nastavím tak aby vzhled odpovídal mřížce o dvou sloupcích.
Do každého z panelů v prvním sloupci přidám komponentu tlabel.
Do každého z panelů v druhém sloupci přidám komponentu tcombobox.
Po kompilaci mřížka drží tvar a vše vypadá dle očekávání.
Dále všem panelům v druhém sloupci nastavím anchors := [akTop, akRight] a všem panelům v prvním sloupci Anchors := [akTop, akRight, akLeft];
Po kompilaci je šířka sloupců rozhozená.
Pokud nyní odeberu z panelů druhého sloupce comboboxy, mřížka je opět v pořádku.

Rád bych Vás požádal o radu přoč se tak děje, popřípadě jak je možné udržet tuto strukturu konzistentní.

Předem děkuji za Váš čas.

(Delphi XE7)
ps. závěrem přikládám vzorový projekt s navozením daného problému.

Online Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3359
  • Karma: 34
    • Verze Delphi: XE7 professional
Re:Rozhozená šířka panelů ve scrollboxu
« Odpověď #1 kdy: 16-04-2018, 14:20:14 »
V prvom rade si daj na formulár dva panely. A až na ne ukladaj dynamicky vytvárané komponenty.
Pri tej ukážke máš porušených asi 1 milión základných pravidiel :o  Tu to nechce rozoberať.


Nerozumiem prečo to robíš takto komplikovane. Čo tak použiť VirtualStringTree?
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

 

S rychlou odpovědí můžete používat BB kódy a emotikony jako v běžném okně pro odpověď, ale daleko rychleji.

Jméno: E-mail:
Ověření:
Kolik je šest plus čtyři (slovem):