Seite 1 von 1

QFileDialog::getExistingDirectory unter Linux

Verfasst: 1. Oktober 2006 03:46
von oberschlingel
Hallo,

habe folgenden Code:

Code: Alles auswählen

QString s = QFileDialog::getExistingDirectory(
		this,
		"Bitte wählen Sie ein Verzeichnis aus...",
		lineDatabasePath->text());
Unter Windows wird mir der bekannte Dialog angezeigt, bei dem man nur Ordner auswählen kann.
Unter Linux (Suse) wird mir aber ein ganz normaler Dateidialog angezeigt, der einen Dateinamen erwartet.

Weiß jemand Rat? Der Benutzer soll nur ein einziges Verzeichnis und keine Datei auswählen dürfen.
Ich verwende Qt 4.1.1.

Danke sehr,
Tom

Verfasst: 1. Oktober 2006 11:59
von caligano
Hallo!

Hast du schon folgendes probiert:

Code: Alles auswählen

QString s = QFileDialog::getExistingDirectory(
                    this,
                    "Bitte wählen Sie ein Verzeichnis aus...", 
                    lineDatabasePath->text(),
                    QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);

mfg cal

Verfasst: 1. Oktober 2006 16:30
von oberschlingel
Danke für die Antwort, leider funktioniert es so auch nicht ganz, aber schon besser. Jetzt werden mir zwar nur noch Verzeichnisse angezeigt, allerdings will der Dialog an sich trotzdem eine Datei haben..
Wenn ich ein Verzeichnis anklicke und dann "Ok" drücke, übernimmt er das Verzeichnis. Wenn ich allerdings doppelt auf das Verzeichnis klicke und dann "Ok", dann übernimmt er den Verzeichnisnamen in das Feld "File name" und meldet dann "File not found".

Gibt es denn nicht die Möglichkeit, wie unter Windows, nur einen Dialog mit Verzeichnissen ohne Feld für den Dateinamen anzuzeigen?

Danke!