nur Ordner auswählen mit QFileDialog

Alles rund um die Programmierung mit Qt
Antworten
drmetal
Beiträge: 3
Registriert: 11. November 2005 16:39

nur Ordner auswählen mit QFileDialog

Beitrag von drmetal »

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
Timewarp
Beiträge: 23
Registriert: 4. November 2005 21:09
Wohnort: Deutschland

Beitrag von Timewarp »

Nunja sieht für mich auch recht einfach aus.

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 )
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.
drmetal
Beiträge: 3
Registriert: 11. November 2005 16:39

Beitrag von drmetal »

habe das jetzt geändert und angepasst. Man kann jetzt ordner auswählen, aber qt öffnet diese dann automatisch und nimmt die bedingung showDirsOnly nicht ernst.
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

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.
Antworten