Bonjour

Je cherche à mettre en place une sorte de QFileDialog qui serait non pas dans une fenêtre indépendante avec un bouton 'OK' mais plutôt comme un treeView sur une partie de mon application

Bien sûr, j'ai essayé un TreeWidget justement mais le résultat obtenu est "bizarre"... peut-être est-ce que je l'utilise mal ???

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
...
        self.treeWidget = qdataTree(Form)
...
        treeDatas(self, address, self.treeWidget)
...
class qdataTree(QtGui.QTreeWidget):
    def __init__(self, parent=None):
        QtGui.QTreeWidget.__init__(self, parent)
...
def treeDatas(self, address, itemParent):
    """
    Defines the DatasView object
    """
    listDir = [f for f in os.listdir(address) if os.path.isdir(os.path.join(address, f))]
    for i in listDir :
        item = (QtGui.QTreeWidgetItem(itemParent))
        item.setText(0,QtGui.QApplication.translate("Form", i, None, QtGui.QApplication.UnicodeUTF8))
        treeDatas(self, address+i+"/", item)
 
    listFile = [f for f in os.listdir(address) if os.path.isfile(os.path.join(address, f))]    
    for j in listFile :
        item1 = QtGui.QTreeWidgetItem(itemParent)
        item1.setText(0,QtGui.QApplication.translate("Form", str(j), None, QtGui.QApplication.UnicodeUTF8))
        ico = QtGui.QIcon("../Ressource/bookmark.png")
        item1.setIcon(0,ico)
Le résultat obtenu ressemble à cela :
si address = "../../Datas/"


et si adress="d:/", le temps que la boucle construise l'arborescence de tout le disque, j'ai le temps d'aller boire un café !!!

J'aimerais avoir un arbre un peu comme celui de Windows par exemple depuis un disque et cela rapidement !

des idées ?

Merci d'avance