hallo,
ich möchte einen QfileDialog öffnen um eine Reihe Verzeichnisse zu markieren um sie dann als QstringList abzuspeichern. komme da jetzt nicht weiter. im Prinzip bräuchte ich was wie getExistingDirectories.
mein code sieht ziehmlich gewöhnlich aus:
QStringList directories = QFileDialog::getOpenFileNames(
this, "Select Directories",
openDirectoriesPath, QFileDialog::ShowDirsOnly);
das gibt den Fehler:
mainwindow.cpp:112: error: no matching function for call to `QFileDialog::getOpe
nFileNames(MainWindow* const, const char[19], QString&, QFileDialog::Option)'
C:/qt/4.0.1/include/QtGui/../../src/gui/dialogs/qfiledialog.h:161: note: candida
tes are: static QStringList QFileDialog::getOpenFileNames(QWidget*, const QStrin
g&, const QString&, const QString&, QString*, QFlags<QFileDialog::Option>)
mainwindow.cpp:110: warning: unused variable 'directories'
das sollte ja irgendwie einfach sein, aber ich wurschtle schon ne weile rum. ich brauche nur die ordnernamen als QStringList. benutze qt 4.0.1
wäre dankbar für eure hilfe
Heiko
nur Ordner auswählen mit QFileDialog
Nunja sieht für mich auch recht einfach aus.
Parameterliste von getOpenFileNames:
Das sind wenn ich richtig zähle: 1 Widget gefolgt von 4 Strings und dann die Options. Wohingegen dein Aufruf lediglich 1 Widget gefolgt von 2 Strings und dann den Options beinhaltet.
Die Funktion mit den Parametern wie du sie aufrufen willst gibt es eben leider nicht.
Parameterliste von getOpenFileNames:
Code: Alles auswählen
QStringList QFileDialog::getOpenFileNames ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString * selectedFilter = 0, Options options = 0 )Die Funktion mit den Parametern wie du sie aufrufen willst gibt es eben leider nicht.
Dafür ist getExistingFileNames ja auch gedacht. Wenn Du Verzeichnisse haben willst, dann mußt Du getExistingDirectory nehmen, was aber nur die Auswahl eines Verzeichnisses erlaubt. Wenn Du mehr willst, solltest Du hier mal lesen und deinen Bedürfnissen anpassen.