f$ = FileRequest(title$[, t])
f$ = FileRequest(title$[, filter$, mode, defdir$, deffile$])
title$ angeben.
Die Datei, die der Benutzer auswählt, wird in f$ zurückgegeben,
einschließlich des Pfades, in dem sie sich befindet. Wenn der Benutzer
den Dialog abbricht, bleibt die Zeichenfolge f$ leer.
FileRequest() unterstützt viele optionale Argumente. Vor Hollywood 9.0
mussten diese als optionale Parameter übergeben werden (siehe oben).
Seit Hollywood 9.0 wird jedoch empfohlen, die neue Syntax zu
verwenden, die ein einzelnes optionales Tabellenargument hat,
mit dem ein oder mehrere optionale Argumente an FileRequest()
übergeben werden können.
Die folgenden Tabellenfelder werden von diesem Befehl erkannt:
Mode:#REQ_SAVEMODE
und für den Mehrfachauswahlmodus #REQ_MULTISELECT. Im Mehrfachauswahlmodus
wird dieser Befehl keine Zeichenkette sondern eine Tabelle
zurückgeben. Sie enthält alle Dateien, die der Benutzer ausgewählt
hat und endet mit einer leeren Zeichenkette. Ab Hollywood 6.0
können Sie mit #REQ_HIDEICONS *.info-Dateien unter AmigaOS
verstecken. Beachten Sie, das dass #REQ_HIDEICONS mit anderen
Modi durch Verknüpfung in einer Oder-Bitmaske '|' kombiniert
werden kann. #REQ_HIDEICONS unterstützt nur AmigaOS. (V2.0)
Path:
File:
Filters:
Wenn es sich um eine Zeichenkette handelt, muss sie die Erweiterungen
der Dateien enthalten, die im Dateidialogfenster angezeigt werden
sollen. Diese Erweiterungen müssen durch '|'-Zeichen getrennt
werden. Zum Beispiel: "voc|wav|8svx|16sv|iff|aiff" zeigt nur
Dateien an, die eine dieser Erweiterungen haben. Stellen Sie
sicher, dass Sie nicht den . (Punkt) vor der Dateierweiterung
einfügen, sondern nur die eigentliche Erweiterung. Der Standardwert
ist "*", was bedeutet, dass alle Dateien angezeigt werden sollen.
Ab Hollywood 9.0 können Sie auch Filters auf eine Tabelle setzen,
um einzelne Dateigruppen und eine Beschreibung für jede Gruppe
zu definieren. Setzen Sie dazu Filters auf eine Tabelle, die
eine beliebige Anzahl von Untertabellen enthält, von denen jede
eine einzelne Gruppe von Dateien beschreibt. Jede Untertabelle
unterstützt die folgenden Elemente:
Filter:
Description:
HideFilter:True setzen,
zeigt FileRequest() nicht die einzelnen Dateierweiterungen an,
die zur Filtergruppe gehören, sondern nur deren Beschreibung.
Beachten Sie, dass dies nicht von allen Plattformen unterstützt
wird. Die Voreinstellung ist False.
MIMEType:
X:
Y:
Width:
Height:
Beachten Sie, dass bei Verwendung von #REQ_SAVEMODE unter Android
der Dateiauswahldialog die ausgewählte Datei automatisch für
Sie erstellt.
f$ = FileRequest("Select a picture", {Filters = "png|jpg|jpeg|bmp"})
If f$ = ""
Print("Requester cancelled!")
Else
Print("Your selection:", f$)
EndIf
Der obige Code fragt den Benutzer nach einer Datei und gibt
das Resultat aus.
files = FileRequest("Select some files", {Mode = #REQ_MULTISELECT})
If files[0] = ""
Print("Requester cancelled!")
Else
NPrint("Path:", PathPart(files[0]))
NPrint("Files selected:", ListItems(files) - 1)
While files[c] <> ""
NPrint(FilePart(files[c]))
c = c + 1
Wend
EndIf
Der Code öffnet die Dateiauswahl im Mehrfachauswahlmodus und
gibt alle Dateien aus, die der Benutzer ausgewählt hat.
f$ = FileRequest("Select file", {Filters = {
{Description = "Image files", Filter = "png|jpg|jpeg|bmp"},
{Description = "Audio files", Filter = "wav|mp3|mp4"},
{Description = "All files", Filter = "*"}}
})
Der obige Code zeigt, wie Sie mehrere Filtergruppen mit Beschreibungen
verwenden.