![]() |
Delphi-Version: XE
ListBox mit verknüpften StringLists sortieren
Hallo,
jetzt hab ich (schon wieder :roll: ) ne Aufgabe. Und zwar: Ich soll eine Verwaltung von mehreren Datenfeldern (gespeichert in StringLists) programmieren. Dabei müssen diese paar StringLists aber nach einer StringList geordnet werden. Konstillation z.B. (sortiert nach Feld A) Eintrag 1: Feld A: Bärenstark Feld B: Wert Feld C: Wert Eintrag 2: Feld A: AAAA 1. Stelle Feld B: Inhalt Feld C: Inhalt usw. Ich habe 19 Felder, die die Daten speichern sollen. (Feld B & Feld C) Es sind in Feld A & Feld B nur Buchstaben möglich. Achja, wenn ich mehrere Einträge habe, die Feld A gleich sind, dann wird zusätzlich noch nach Feld B sortiert. Soo - hat jemand das ganze verstanden? Wenn nein - fragen bitte !! Außerdem: Was verwende ich dann am besten, um das ganze zu speichern? Die DB sollte auch recht groß werden können (So ca. 500 Einträge), hat aber auch recht viele Felder (werden so etwa 20, davon ist eine aber schon eine "Untertabelle". In dieser "Untertabelle" existiert nochmal eine "Untertabelle") Wer das ganze jetzt nicht durchblickt hat: - 1. Ebene: 20 Felder. - Feld XX: Untertabelle 1 - Ebene 2: 10 Felder - Feld YY: Untertabelle 2 - Ebene 3: 5 Felder So sähe die Struktur etwa aus. Mit XML würde das gehen. Nur es sollte ja möglichst rasch geladen werden können. |
AW: ListBox mit verknüpften StringLists sortieren
Wie wäre es, wenn du das mal etwas strukturierter zusammenschreiben würdest?
Deine Beschreibung ist sehr konfus und abstrakt (und beschreibt wahrscheinlich auch nur das linke Ohr vom Eisbär) Wenn du etwas nicht beschreiben kannst, dann mal es auf und schick ein Bild mit hoch. |
AW: ListBox mit verknüpften StringLists sortieren
Vielleicht verstehst du es mit dieser Struktur besser?
XML-Code:
In dem Fall wäre <interessen> die 1. Untertabelle. Darin gibt es dann die "unterListe", wo weitere <einstellung>'s gespeichert sind.
<liste>
<eintrag> <typ>Eisbär</typ> <name>Robert</typ> <interessen> <unterListe typ="Fressen"> <einstellung detail="pizza">Nein danke</einstellung> <einstellung detail="fische">Eher</einstellung> </unterListe> <unterListe typ="Hobbies"> <einstellung detail="schach">Was ist das?</einstellung> <einstellung detail="fressen fangen">Eher</einstellung> </unterListe> </interessen> </eintrag> <eintrag> <typ>Rentier</typ> <name>Rudolf</name> <interessen> <unterListe typ="Fressen"> <einstellung detail="-">keine Angabe</einstellung> </unterListe> <unterListe typ="Hobbies"> <einstellung detail="Schlitten ziehen">Das macht Spaß!</einstellung> <einstellung detail="Für Weihnachtsmann arbeiten">Juhu!</einstellung> </unterListe> </interessen> </eintrag> </liste> |
AW: ListBox mit verknüpften StringLists sortieren
ok, also in kleinen Schritten ...
Was soll jetzt wie und wo in der ListBox (oder werden es mehrere?) angezeigt werden? |
AW: ListBox mit verknüpften StringLists sortieren
Die Struktur ist mir nicht klar. Meinst du so ?
Delphi-Quellcode:
type
TItem = class(TObject) Typ: string; List1: TStringlist; SubList1: array of TStringlist; List2: TStringlist; SubList2: array of TStringlist; end; TItemList = array of TItem; |
AW: ListBox mit verknüpften StringLists sortieren
ich glaube er will 2 Ebenen in einer zusammenfassen.
hast du 2 listen die du in eine anzeige bringen willst? oder wie? |
AW: ListBox mit verknüpften StringLists sortieren
Hmm - also:
ich habe eine ListBox (1). in der steht halt immer Feld1 und Feld2. Dann gibt es Edit-Komponenten, um die ganzen Felder editieren zu können. Ja, soweit bin ich ja schon. Aber: ich brauche dann eine weitere ListBox (2), die dann die Einträge der von Bjoerk genannten SubList1 anzeigen. Wieder Feld1 und Feld2. Dann ändern sich auf "Change" der ListBox2 wieder ein paar Felder, eben die der SubList1. In der SubList 1 gibt es nochmal eine ListBox (3). Auf das OnChange dieser sehe ich dann Inhalte der SubList2. @Bjoerk: Ich habe aber in der SubList2 mehrere Felder, nicht nur eines. nämlich zwei Stück. |
AW: ListBox mit verknüpften StringLists sortieren
Vielleicht könnte man die Struktur so abbilden (Fehler vorbehalten):
Delphi-Quellcode:
type
TInteresse = class private FDetailTyp: string; FDetail: string; public property DetailTyp: string read FDetailTyp write FDetailTyp; property Detail: string read FDetail write FDetail; end; TInteressenKategorie = class private FInteressen: TObjectList<TInteresse>; FTyp: string; function GetInteresse(Index: integer): TInteresse; public constructor Create; destructor Destroy; override; procedure AddInteresse(Value: TInteresse); procedure Sortiere; property Typ: string read FTyp write FTyp; property Interesse[Index: integer]: TInteresse read GetInteresse; end; TEintrag = class private FKategorien: TObjectList<TInteressenKategorie>; FTyp: string; FName: string; function GetKategorie(Index: integer): TInteressenKategorie; public constructor Create; destructor Destroy; override; procedure AddKategorie(Value: TInteressenKategorie); procedure Sortiere; property Typ: string read FTyp write FTyp; property Kategorie[Index: integer]: TInteressenKategorie read GetKategorie; end; TListe = TObjectList<TEintrag>; |
AW: ListBox mit verknüpften StringLists sortieren
Zitat:
Code:
X
X.1 X.2 X.1.1 X.2.1 X.1.2 X.2.2 |
AW: ListBox mit verknüpften StringLists sortieren
@Bjoerk: Ja, so meine ich es.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:26 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz