Datenbanktabelle -> QTreeView (QTreeWidget?)

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

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?
Panke
User
Beiträge: 185
Registriert: Sonntag 18. März 2007, 19:26

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.
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

Das Problem ist, dass die Datenbank steht. Muss mit den Daten arbeiten, die jetzt drin stehen.
Panke
User
Beiträge: 185
Registriert: Sonntag 18. März 2007, 19:26

Ich seh das Problem gerade nicht.

http://pastebin.ca/1588020
Antworten