In meiner Anwendung muss ich viele Bilder laden. Ich würde wirklich eine Option verwenden, um die zuletzt geöffnete Datei auszuwählen, also möchte ich die zuletzt ausgewählte Datei wissen. Dokumentation sagt:getOpenFileName - Vorauswahl zuletzt geöffnet funktioniert nicht
QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),
"/home",
tr("Images (*.png *.xpm *.jpg)"));
Arbeitsverzeichnis des Dateidialog wird dir eingestellt werden. Wenn dir einen Dateinamen enthält, wird die Datei ausgewählt.
Also ich sollte den zuletzt geöffneten Dateipfad irgendwo speichern und dann anstelle von "/ home" einfügen. Aber das funktioniert nicht. Im geöffneten Dateidialog wird der Dateiname auf die letzten Zeichen zurückgesetzt und keine Datei ausgewählt. Was ist los? Ist es ein Fehler?
Mein aktueller Code:
QString fileName = QFileDialog::getOpenFileName(this, "Select file",
lastUsedFile, "Image Files (*.png *.jpg *.jpg *.bmp);; JPEG(*.jpg *.jpeg);; PNG(*.png);; BMP(*.bmp)");
if (!fileName.isEmpty())
lastUsedFile = fileName;
Was ich möchte, ist zu erreichen, die für die Datei zu ausgewählten und gescrollt werden.
Wie gesagt, das funktioniert nicht wie erwartet. Hier ist ein Beispiel:! [IMAGE] (https://image.ibb.co/k61oMF/dialog.jpg) Hier ist, was gespeichert wird und was in den Dialog geladen wird (und keine Datei ausgewählt ist, weil der Name nicht gültig ist) – Pawel
Könnten Sie mir bitte auch Ihren Code zeigen? – michalis
Eigentlich sollte das, was in den Dialog geladen wird, korrekt sein. Sie sehen die Auswahl auf dem Text auf Ihrem Screenshot? Versuchen Sie, die Home-Taste zu drücken, und Sie werden sehen, dass die Eingabe den vollständigen Namen der Datei enthält. Ich weiß wirklich nicht, ob dies ein Qt-Problem oder das Problem des Standard-Datei-Öffnen-Dialogs ist, da Sie das System eines standardmäßig in Windows verwenden. Sie können es jedoch mit der Option 'DontUseNativeDialog' überschreiben. –