RecipeDialog

RecipeDialog ( value BYREF Result, string BYREF strFile, value bOpenRecipeDialog = TRUE, string strRecipe = "", value dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITE , string strFilter = "" );

Rückgabewert

Keiner

Parameter

Result

Aktueller Zustand bzw. Rückgabewert des Dialoges.

Result Bedeutung
0 Dateidialog ist momentan geöffnet.
1 Dateidialog wurde mit Öffnen- bzw. Speichern-Schaltfläche verlassen.
2 Dateidialog wurde mit Abbrechen-Schaltfläche verlassen

strFile

Beinhaltet strFile beim Aufruf der Funktion eine gültige Rezepturdatei, so wird der Dateidialog mit diesen Daten vorgeladen. Wird der Dateidialog mit der Öffnen- bzw. Speichern-Schaltfläche verlassen, so wird in strFile der Rezepturdateiname inklusive Ordnerangabe zurückgegeben, ansonsten bleibt der Inhalt von strFile unverändert.

bOpenFileDialog

Entscheidet darüber ob ein Öffnen- oder ein Speichern-Dialog dargestellt wird.

bOpenFileDialog

Bedeutung
TRUE Dateidialog im Datei öffnen Modus darstellen.
FALSE

Dateidialog im Datei speichern Modus darstellen.

dwFlags

Nachfolgende Optionen können durch binäre Oder-Verknüpfungen kombiniert übergeben werden.

dwFlags

Eigenschaft

OFN_ALLOWMULTISELECT

Gibt an, dass eine Mehfachauswahl möglich ist.

OFN_CREATEPROMPT

Gibt an, dass - falls die angegebene Datei nicht existiert - beim Benutzer nachgefragt werden soll, ob die Datei erstellt werden soll.

OFN_ENABLESIZING

Gibt an, dass der Dialog in seiner Größe verändert werden kann.

OFN_EXPLORER

Gibt an, dass der Dialog im Stil des Explorers dargestellt werden soll.

OFN_EXTENSIONDIFFERENT

Gibt an, ob ein Benutzer einen Dateinamen eingegeben darf, der von  der/den vorgegebene/n Dateierweiterung/en abweicht.

OFN_FILEMUSTEXIST

Gibt an, dass der Benutzer nur Dateinamen von existierenden Dateien  eingeben darf. Wird ein nicht existierender Dateiname eingetragen, erscheint eine entsprechende Mitteilung.

OFN_HIDEREADONLY

Gibt an, dass die "Schreibgeschützt öffnen"-Option ausgeblendet werden soll.

OFN_NOCHANGEDIR

Stellt das ursprüngliche Verzeichnis beim erneuten Öffnen wieder her, falls der Benutzer dieses z.B. in ein vorherigen Suche verändert hatte.

OFN_NONETWORKBOTTON

Gibt an, dass die Netzwerk-Schaltfläche ausgeblendet werden soll.

OFN_NOREADONLYRETURN

Gibt an, dass keine schreibgeschützte Datei geöffnet werden darf.

OFN_NOTESTFILECREATE

Gibt an, dass eine Datei erst dann angelegt werden soll, wenn der Dialog geschlossen wurde.

OFN_NOVALIDATE

Gibt an, dass der Dialog nicht überprüfen soll, ob für den Dateinamen ungültige Zeichen eingegeben wurden.

OFN_NODEREFERENCELINKS

Gibt an, dass nicht der Name einer Verknüpfung (*.lnk) zurückgeliefert werden soll, sondern der Name der Datei, auf den die Verknüpfung verweist.

OFN_NOLONGNAMES

Gibt an, dass "kurze" Dateinamen (8.3 Format) verwendet werden sollen. Der Dateidialog im "Explorer Stil" ignoriert dieses Flag.

OFN_OVERWRITEPROMPT

Gibt an, dass der Dialog beim Speichern einer schon bestehenden Datei einen Hinweis bringt, dass die Datei überschrieben werden soll.

OFN_PATHMUSTEXIST

Gibt an, dass nur gültige Pfad und Dateinamen eingegeben werden können, ansonsten erscheint eine Warnmeldung.

OFN_READONLY

Gibt an, dass die "Schreibgeschützt öffnen" -Option beim Öffnen des Dialogs bereits markiert ist.

OFN_SHAREAWARE

Gibt an, dass, falls ein Netzwerkfehler beim Öffnen der gewählten Datei auftritt, dieser Fehler ignoriert wird und der Dateiname zurückgeliefert wird.

OFN_SHOWHELP

Gibt an, dass der Dialog zusätzlich eine Hilfe-Schaltfläche anzeigt.

strFilter

Der Dateiendungsfilter strFilter wird verwendet, um den Dateityp anzugeben, welcher im Listenfeld "Dateityp" erscheinen soll. Es können mehrere Filter vorgegeben werden, diese müssen mit einem '|' Zeichen getrennt werden. Die komplette Filterkette muss immer mit einem Doppelzeichen '||' abgeschlossen sein. Jeder Filter besteht aus einer Filterbeschreibung, die im Listenfeld eingetragen wird und dem tatsächlichen Filter. Die beiden Filterkomponenten werden mit einem '|' getrennt.

Bemerkung

Öffnet einen Dateidialog um Rezept-Dateien zu öffnen oder zu speichern. Beachten Sie, dass dies nur eine Dialogkontrollfunktion ist. D.h. wollen Sie eine Rezeptur aufgrund des Dialogergebnisses laden oder speichern, so müssen Sie diesen Vorgang explizit programmieren.
Wird die Funktion RecipeDialog aufgerufen, so wird ein eigenständiger Prozess gestartet, der den Dialog öffnet und den Status an die übergebenen Variablen weitergibt, und das Programm läuft ohne Verzögerung (warten auf das Dialogergebnis) weiter. Beim Verlassen des Dialogs bzw. beim Beenden der Anwendung wird dieser Prozess automatisch beendet.

Beispiel

//öffnet den "Speichern unter"-Dialog und übergibt den "Status" an die Variable Result sowie den ermittelten Rezepturnamen an die Variable strFile.

RecipeDialog (Result, strFile, FALSE);

 

//öffnet den "Öffnen"-Dialog und übergibt den "Status" an die Variable Result sowie den ermittelten Rezepturnamen an die Variable strFile.

RecipeDialog (Result, strFile, TRUE, OFN_HIDEREADONLY, "Standard (.rzp)|*.rzp|Spezielle Rezeptur|XX*.rxx||");

 

//RecipeDialog öffnet den "Öffnen"-Dialog und übergibt jede "Statusänderung" am Dialog an ResultRecipeLoad. Beim Verlassen des Dialoges mit der Öffnen-Schaltfläche wird die Rezeptur geladen.

if (buttonRecipeLoad)

RecipeDialog (ResultRecipeLoad, strFile);

end

if (ResultRecipeLoad == 1)

RecipeRead (strFile);

ResultRecipeLoad = 0;

end

 

//RecipeDialog öffnet den "Speichern unter"-Dialog und übergibt jede "Statusänderung" am Dialog an buttonRecipeSave. Beim Verlassen des Dialoges mit der Speichern-Schaltfläche wird die Rezeptur abgespeichert.

if (buttonRecipeSave)

RecipeDialog (ResultRecipeSave, strFile, FALSE);

end

if (ResultRecipeSave == 1)

RecipeWrite (strFile);

ResultRecipeSave = 0;

end
 

Die Rezepturfunktionen

Siehe auch RecipeGetLast, RecipeRead, RecipeReadLast, RecipeWrite