Ich versuche in Mac OS X den "Speichern unter ..." -Dialog zu erstellen. Aber ich möchte nicht QFileDialog::getSaveFileName()
function verwenden, da der von dieser Funktion erzeugte Dialog wirklich NICHT ist -Nativ in Mac OS X Lion. Also entscheide ich mich für den Dialog als QFileDialog
object:
Alles funktioniert gut, bis auf ein Problem. Ich kann den Standardnamen für die gespeicherte Datei nicht festlegen, daher muss der Benutzer diesen Namen jedes Mal manuell eingeben. Ich weiß, dass die Funktion QFileDialog::getSaveFileName()
den Standarddateinamen über das dritte Argument dir festlegen kann ( Ссылка ). Aber wie setzt man diesen Standardnamen ohne diese Funktion?
Ich kann das Standard-Suffix für die gespeicherte Datei über QFileDialog::setDefaultSuffix()
function setzen, aber ich muss den ganzen Standardnamen und nicht nur das Standard-Suffix einstellen.
Ich habe versucht, QFileDialog::setDirectory()
function zu verwenden, aber es legt nur das Verzeichnis fest, in dem gespeichert werden soll, ohne den Namen der gespeicherten Datei.
Ich verwende Qt 4.8.1 unter Mac OS X Lion.
Vielen Dank im Voraus für Ihre Hilfe.
Ich suchte nach google nach set default filename qfiledialog
und passierte quer durch diese Diskussion.
Ich habe festgestellt, dass die Verwendung von selectFile("myFileName");
nur funktioniert, wenn die Datei tatsächlich existiert. In meinem Fall besteht die Absicht darin, eine neue Datei mit der Option zu erstellen, eine vorhandene Datei zu überschreiben.
Die Lösung, die für mich (Qt 5.3.2) funktioniert hat, war wie folgt:
%Vor%Im obigen Beispiel ist preferredName ein QString, der "C: /pre-selected-name.txt"
enthältIch hoffe, das hilft
Mit der aktuellen QT-Version (5.x) können Sie Ihren bevorzugten Dateinamen mit dem Argument directory
im QFileDialog.getSaveFileName()
Funktionsaufruf:
Dokumente: Ссылка
Tags und Links macos qt4 qfiledialog