Ich muss ganz ehrlich sagen, ich kann den Code nicht kommentieren, weil ich die Frage schon nicht verstanden habe.
Zitat:
Ich habe vier
XML-Dateien, die erste habe ich in Comboboxen eingelesen, (kein Problem).
Und was wird in den Comboboxen dargestellt? Diese ID, von der du hier redest:
Zitat:
Jetzt aber möchte ich, das wenn ich einen Eintrag aus einer dieser Comboboxen gewählt habe, das der dazu gehörende Satz oder Sätze (wird über eine "ID" gewährleistet) in einem Listview dargestellt wird.
Und warum brauchst du jetzt auf einmal 3 List-Views?
Und was bedeutet:
Zitat:
Die OnClicks der Buttons 1 - 3 machen das gleiche wie diese Procedure.
Irgendwas müssen die sicher anders machen, sonst gäbe es wohl keinen Grund für 3 Klickprozeduren. Oder anders gesagt: Wenn in diesen Prozeduren der Code identisch ist, dann solltest du über eine Auslagerung in
eine separate Prozedur nachdenken, die du dann in den Buttonklicks einfach nur aufrufst. Das verkürzt den Code und reduziert Fehler, weil du bei Problemen nicht mehr 3 Prozeduren anpassen musst.
Das einzige, das mir jetzt einfällt, wäre, dass diese
XML-Komponente von Delphi bestimmt auch
XPath kann. Hat irgendwer Delphi 6 bzw. 7 zum Bestätigen oder Verneinen dieser Behauptung? Wenn es funktioniert, dann kannst du dir das umständliche Durchlaufen durch das Dokument mit einer Abfrage à la
selectNodes('//V_KOMPLEX[IDEENR="' + ComboBox5.Text + '"]');
sparen. Damit werden allerdings
alle V_KOMPLEX-Knoten berücksichtigt; Egal
wo in der
XML-Datei sie sich befinden. Wenn es in deinem Dokument diese Knoten nur an einer bestimmten Position geben kann, dürfte das kein Problem sein. Andernfalls müsstest du kurz deine Dokumentenstruktur an einem fiktiven Beispiel (bitte nicht mit realen Daten!) zeigen, dann könnte ich (oder wer auch immer) dir eine speziell angepasste
XPath-Abfrage zeigen. Wobei es aber auch nicht das Problem ist. Wenn dein Dokument bspw. so aussieht:
XML-Code:
<RootKnoten>
<Unterknoten>
<UnterUnterKnoten>Hallo</UnterUnterKnoten>
</Unterknoten>
<Unterknoten>
<UnterUnterKnoten>Welt!</UnterUnterKnoten>
</Unterknoten>
</RootKnoten>
dann sähe die Abfrage für den zweiten UnterUnterKnoten-Knoten so aus:
'/RootKnoten/UnterKnoten[UnterUnterKnoten="Welt!"]'