Delphi > Firemonkey
StringGrid - zoradenie údajov podľa stlpca
(1/1)
Stanislav Hruška:
Skúšam FMX. Na zobrazenie obsahu tabuľky som si vybral StringGrig. Neviem, či je lepší Grid. Som zhýčkaný VirtualStringTree.
Ak kliknem na hlavičku, tak chcem aby sa všetko zoradilo podľa tohto stĺpca. Na to musím nastaviť v TFDTable IndexFieldsName.
Udalosť je definovaná strngrd1HeaderClick(Column: TColumn). Popis v helpe je nanič.
Spôsobom pokus omyl som zistil nasledovné.
* Column.Index mi vráti aktuálnu polohu stĺpca. Zohľadňuje jeho premiestnenie. Nedá sa použiť.
* Tak isto sa nedá použiť názov, lebo
* ShowMessage(Column.Header); // Názov stĺpca - DisplayName. A ten bude napr. v inom jazyku ako je názov poľa.
* Nehovorím o tom, žeby sa mi páčilo mať zostupné zoradenie (Z-A)Ako sa to dá urobiť? Alebo existuje na zobrazenie obsahu tabuľky lepší komponent?
tomak586:
My používáme komponenty od TMS. Podívej se na https://download.tmssoftware.com/doc/tmsfncuipack/components/ttmsfncgrid/
Stanislav Hruška:
Viem o nich. Nemám a nedám na to 400€. Má to byť taký malý free projekt.
Používam VCL UI Pack. Som veľmi spokojný.
Stanislav Hruška:
Hm, TGrid vyzerá ako nepoužiteľný. Nedá sa v Bind Visualy napojiť na zdroj údajov.
Stanislav Hruška:
Našiel som OriginalIndex.
--- Kód: Delphi ---procedure TMainFMXForm.strngrd1HeaderClick(Column: TColumn);begin if fdtb1.IndexFieldNames = fdtb1.Fields.Fields[Column.OriginalIndex].FieldName then exit; fdtb1.IndexFieldNames := fdtb1.Fields.Fields[Column.OriginalIndex].FieldNameend;
Navigace
[0] Seznam témat
Přejít na plnou verzi