Zeigt den "Datei speichern"-Dialog an.
FileSaveDialog ( "title", "init dir", "filter" [, options = 0 [, "default name" [, hwnd]]] )
title | Titel des Dialoges. |
init dir | Startverzeichnis, welches im Verzeichnisbaum markiert wird. |
filter | Dateifilter wie z. B. "Alle (*.*)" oder "Textdateien (*.txt)" oder Multifiltergruppen wie z. B."Alle (*.*)|Textdateien (*.txt)" (Siehe Bemerkungen). |
options | [optional] Dialog Optionen: Um mehr als eine Option zu verwenden, müssen diese "Oder"(BitOr) verknüpft werden. $FD_PATHMUSTEXIST (2) = Pfad muss existieren (wenn der Benutzer einen Pfad eintippt, endet er mit einem Backslash) $FD_PROMPTOVERWRITE (16) = Frage beim Überschreiben einer Datei Die Konstanten sind in FileConstants.au3 definiert. |
default name | [optional] Dateinamensvorschlag, unter dem die Datei gespeichert werden soll. Standard ist ein leerer String (""). |
hwnd | [optional] Das Fenster Handle welches als Parent für diesen Dialog verwendet werden soll. |
Erfolg: | Den kompletten Pfad der ausgewählten Datei. Rückgabe mehrerer Dateien wie folgt: "Verzeichnis|Datei1|Datei2|..." |
Fehler: | Setzt das @error Flag auf ungleich null. |
@error: | 1 = Dateiauswahl fehlgeschlagen. 2 = Ungültiger Dateifilter |
Die Filter wie im Beispiel zu sehen mit Semikolon abtrennen.
Multifiltergruppen werden durch einen Strich "|" getrennt.
Wenn der Dateinamensvorschlag angegeben wird, müssen auch die "options" angegeben werden.
Wenn keine der "options"-Funktionen benötigt wird, muss "options" den Wert "0" erhalten.
Besondere Windows-Ordner (wie z.B. "Dokumente und Einstellungen") können als Basisverzeichnis gesetzt werden, indem man ihre CLSIDs angibt. Siehe Anhang CLSIDs besonderer Ordner.
@WorkingDir wird bei erfolgreichem Rückgabewert geändert.
FileOpenDialog, FileSelectFolder
#include <FileConstants.au3>
#include <MsgBoxConstants.au3>
#include <StringConstants.au3>
Example()
Func Example()
; Erstellt eine Konstante im lokalen Bereich der Nachricht die in FileSaveDialog dargestellt werden soll.
Local Const $sMessage = "Choose a filename."
; Zeigt einen Öffnen-Dialog an um eine Datei auszuwählen.
Local $sFileSaveDialog = FileSaveDialog($sMessage, "::{450D8FBA-AD25-11D0-98A8-0800361B1103}", "Skripte (*.au3)", $FD_PATHMUSTEXIST)
If @error Then
; Zeigt die Fehlermeldung.
MsgBox($MB_SYSTEMMODAL, "", "No file was saved.")
Else
; Ermittelt den Dateinamen von dem Dateiordner z. B. Example.au3.
Local $sFileName = StringTrimLeft($sFileSaveDialog, StringInStr($sFileSaveDialog, "\", $STR_NOCASESENSEBASIC, -1))
; Prüft, ob die Erweiterung .au3 an Ende des Dateinamens enthalten ist.
Local $iExtension = StringInStr($sFileName, ".", $STR_NOCASESENSEBASIC)
; Falls ein Punkt gefunden wurde, so wird geprüft, ob oder ob nicht die Erweiterung gleich .au3 ist.
If $iExtension Then
; Falls die Erweiterung nicht gleich .au3 ist, dann wird dies an das Ende des Dateipfads angehängt.
If Not (StringTrimLeft($sFileName, $iExtension - 1) = ".au3") Then $sFileSaveDialog &= ".au3"
Else
; Falls kein Punkt gefunden wurde, dann wird die Erweiterung .au3 an das Ende des Dateipfads angehängt.
$sFileSaveDialog &= ".au3"
EndIf
; Zeigt die gespeicherte Datei.
MsgBox($MB_SYSTEMMODAL, "", "Es wurde die folgende Datei gespeichert:" & @CRLF & $sFileSaveDialog)
EndIf
EndFunc ;==>Example