Seite 1 von 1

Frage zu QTreeView/QDirModel

Verfasst: 10. Juli 2006 12:36
von tscher
Hallo liebe Qt Gurus,

ich hab ein QDirModel, das mittels QTreeView anzeigt wird. Nun möchte ich den Benutzer ein Verzeichnis markieren lassen und dann auf Knopfdruck auf alle Dateien und Unterverzeichnisse darin verschiedene Aktionen durchführen.

Dafür muß ich irgendwie an eine Liste aller Unterverzeichnisse und Dateien in einem bestimmten Folder kommen. Leider bin ich beim Lesen der Doku zu QDirModel und QTreeView auf keinen Hinweis gestoßen wie ich das anstellen soll. (Ich muß allerdings zugeben das ich glaube die Model/View-Geschichte noch nicht wirklich verstanden zu haben...).

Kann mir hier jemand weiterhelfen ? Für Hinweise und Code Snipplets wäre ich sehr dankbar !

lG,
tscher

Verfasst: 10. Juli 2006 21:51
von upsala
Völlig ungetestet:

Code: Alles auswählen

QTreeView *view;
QDirView *dir;
QItemSelectionModel *selModel=selectionModel();

QModelIndexList list(selModel->selectedIndex());

int pos=0;

while (pos<list.count()) {
  QModelIndex index=list.at(pos);

    if (dir->isDir(index)) {
      int rows=dir->rowCount(index);
      for (int i=0; i<row; i++) {
        list.append(index.sibling(i, 0));
     }
  }
	
  pos++;
}

for (int i=0; i<list.count(); i++) {
  qDebug() << dir.fileName(list.at(i));
}

vielen Dank !

Verfasst: 12. Juli 2006 09:40
von tscher
Hi upsala,

vielen Dank für die Informationen... habe den Code nicht direkt verwendet, aber genügend Hinweise bekommen das ich mich durchgraben konnte :) Jetzt funktionierts.

schönen Dank+lG
tscher