Seite 1 von 1
TreeView mit DirModel und weitere Elemente
Verfasst: 20. Dezember 2007 21:21
von qt2007
Hallo zusammen!
Ich würde gern folgende Struktur in einem TreeView oder TreeWidget erzeugen:
Code: Alles auswählen
-Datenbank
...
-Explorer
|
C:\
|
Ordner1
D:\
usw.
+Element3
+Element4
Also praktisch zu dem was QDirModel macht noch ein paar andere Elemente. Kann man sich das irgendwie einfach zusammenbauen ohne ein eigenes Model erstellen zu müssen?
Verfasst: 21. Dezember 2007 18:55
von marco
> ohne ein eigenes Model erstellen zu müssen?
nein, ich denke nicht.
Verfasst: 18. Februar 2008 09:17
von qt2007
Könnte mir evtl jemand einen Tip geben wie man sowas am einfachsten macht damit ich nicht in einer Sackgasse lande? Die ganze Struktur soll auch gespeichert werden, in einer xml Datei zum Beispiel, und zur Laufzeit soll man neue Items einfügen können. Habe mir folgendes überlegt:
Version 1:
Model abgeleitet von QStandardItemModel, beim erzeugen wird der Baum aufgebaut
Items abgeleitet von QStandardItem:
FolderItem (Unterordner zur Gliederung)
DirItem
DatabaseItem
weitere Items...
Problem ist hierbei das DirItem, da müsste man größere Eingriffe machen, so wie ich das sehe eigentlich vieles von QStandardItem neu schreiben? Zur Speicherung des Baumes auf das Signal onItemChanged() reagieren?
Version 2:
Model: QAbstractItemModel
Items: abgeleitet von eigener Klasse TreeItem, Rest wie oben
Problem: sehr viel Arbeit, aber flexibler?
Wäre nett wenn mich jemand in einem Vorhaben bestätigen könnte oder vielleich noch einen anderen Tip hätte.
Gruß
Verfasst: 18. Februar 2008 09:42
von upsala
Ich habe vor kurzem versucht ein Model zu erstellen, bei dem man mehrere Modelle zusammenfassen kann. Bei ListModels ist mir dies gelungen, bei TreeModels nicht. Deswegen würde ich von QAbstractItemModel ableiten und das Verhalten von QDirModel nachbauen und der Rest ist dann eh deine Sache...