Seite 1 von 1

Datenbanktabelle -> QTreeView (QTreeWidget?)

Verfasst: Donnerstag 1. Oktober 2009, 14:33
von burli
Hi, mir macht der TreeView immer noch Kopfzerbrechen. Folgendes Problem: Ich habe in einer bestehenden Datenbank eine Tabelle mit Daten für Warengruppen. Der Programmierer hat sich dabei leider ein eigenes System zur Speicherung der "Baumstruktur" einfallen lassen. Auf der Webseite funktioniert das, aber ich bekomme es nicht auf die Reihe, daraus einen Baum in Qt4 zu basteln.

Die Struktur besteht aus einem String mit Zahlen. Für jede "Ebene" gibt es drei Ziffern. Je tiefer die Ebene liegt, umso mehr Ziffern gibt es. Ein Beispiel:

Code: Alles auswählen

+-- Bücher            : 001
|   +--Romane         : 001001
|   |   +-Action      : 001001001
|   |   +-SciFi       : 001001002
|   |   +-Romantik    : 001001003 
|   |
|   +--Fachbücher     : 001002
|   |   +-Computer    : 001002001
|
+--DVD                : 002
|  +--Spielfilme      : 002001
|  |   +-Action       : 002001001
|  |   +-SciFi        : 002001002
|  |
|  +--Dokumentationen : 002002
|
| usw
Wie mache ich daraus einen Baum? Und muss ich QTreeView oder QTreeWidget verwenden?

Verfasst: Donnerstag 1. Oktober 2009, 17:15
von Panke
Ich würde das so machen, dass row für jedes Element im Baum die Nummer in der entsprechenden Ebene ist. Also row(Bücher) = 1, row(SciFi) = 2, row(Computer) = 1, row(DVD) = 2. Und dann die Parents entsprechend nutzen.

Also als Model von QAbstractItemModel erben und dann die Zugriffe entsprechend auf die Ziffernfolgen abbilden.

Verfasst: Donnerstag 1. Oktober 2009, 17:28
von burli
Das Problem ist, dass die Datenbank steht. Muss mit den Daten arbeiten, die jetzt drin stehen.

Verfasst: Donnerstag 1. Oktober 2009, 18:37
von Panke
Ich seh das Problem gerade nicht.

http://pastebin.ca/1588020