Version 2004 (Geändert)
Open window (Links; Oben; Rechts; Unten{; Typ{; Titel{; Schließen}}}){ FensterRef }
Parameter | Typ | Beschreibung | |
Links | Numerisch | Linke Position des Fensters | |
Oben | Numerisch | Obere Position des Fensters | |
Rechts | Numerisch | Rechte Position des Fensters oder | |
-1 für Standardgröße des Formulars | |||
Unten | Numerisch | Untere Position des Fensters oder | |
-1 für Standardgröße des Formulars | |||
Typ | Numerisch | Typ des Fensters | |
Titel | String | Titel des Fensters | |
oder "" für Standardtitel des Formulars | |||
Schließen | String | Aufzurufende Methode bei Doppelklick auf die | |
Kontrollmenü-Box oder Klick auf Schließbox | |||
Funktionsergebnis | FensterRef | Referenznummer des Fensters |
Beschreibung
Die Funktion Open window öffnet ein neues Fenster mit den in den ersten vier Parametern angegebenen Werten. Ausgangspunkt für die Maßangaben ist unter Windows die linke obere Ecke des Anwendungsfensters, auf Macintosh die linke obere Ecke des Bildschirms. Vergleichen Sie dazu das folgende Bild:
Übergeben Sie für Rechts und Unten den Wert -1,legt 4D unter folgenden Bedingungen automatisch die Größe des Fensters fest:
Sie haben im Designmodus ein Formular erstellt und seine Ausmaße im Fenster Formulareigenschaften festgelegt.
Sie haben vor dem Aufruf von Open window das Formular mit dem Befehl INPUT FORM ausgewählt und den optionalen Parameter * übergeben.
Hinweis zur Kompatibilität: Open window bietet eine Reihe von Optionen, die über die Jahre gewachsen und modifiziert wurden. Aus Kompatibilitätsgründen ist die Funktion weiterhin enthalten. Schreiben Sie neuen Code zur Fensterverwaltung, sollten Sie die Funktion Open form window verwenden, da sie alle Anforderungen in der heutigen Praxis erfüllt und auch einfacher zu bedienen ist.
Wichtig: Das Fenster wird nur automatisch angepasst, wenn Sie zuvor für das anzuzeigende Formular den Befehl INPUT FORM aufgerufen und den optionalen Parameter * übergeben haben.
Der Parameter Typ ist optional. Damit bestimmen Sie den Fenstertyp. Die verschiedenen Typen werden im Abschnitt Fenstertypen beschrieben. Geben Sie diesen Wert nicht an, wird standardmäßig der Typ 1 verwendet. Übergeben Sie einen negativen Wert, verhält sich das Fenster wie ein Palettenfenster. Es liegt immer auf dem Bildschirm ganz vorne, außer es erscheint ein Dialogfenster.
Mit dem optionalen Parameter bestimmen Sie den Fenstertitel. Bei Fenstertypen ohne Titelleiste hat er keine Wirkung.
Übergeben Sie in Titel einen leeren String (""),verwendet 4D für das anzuzeigende Formular den Fenstertitel, der im Designmodus im Fenster Formulareigenschaften festgelegt wurde.
Wichtig: Der Standardtitel des Formulars wird nur eingesetzt, wenn Sie zuvor für das anzuzeigende Formular den Befehl INPUT FORM aufgerufen und den optionalen Parameter * übergeben haben.
Der Parameter Schließen ist ebenfalls optional. Er erwartet einen Methodennamen. Wird der Parameter angegeben, erscheint unter Windows eine Kontrollmenü-Box, auf Macintosh eine Schließbox. Mit einem Doppelklick auf die Menübox bzw. einem Klick auf die Schließbox ruft der Anwender die in Schließen angegebene Methode auf. Sie muss eine Bestätigen- oder Abbrechen-Anweisung enthalten.
Version 6 Hinweis: Sie können das Schließen des Fensters auch über eine Formularmethode steuern, die zum im Fenster angezeigten Formular gehört, wenn ein Ereignis On Close Box eintritt. Weitere Informationen dazu finden Sie in der Beschreibung zur Funktion Form event.
Öffnen Sie während eines Prozesses mehrere Fenster, ist das zuletzt geöffnete das aktive Fenster. Sie können nur die Informationen in diesem Fenster verändern. Die Daten in den anderen Fenstern werden jedoch weiterhin angezeigt. Gibt der Anwender Daten ein, kommt das für diesen Prozess aktive Fenster ganz nach vorne.
Formulare werden innerhalb eines offenen Fensters angezeigt. Text vom Befehl MESSAGE erscheint ebenso im Fenster.
Beispiele
1. Folgende Projektmethode öffnet unter Windows innerhalb des Hauptfensters, auf Macintosh im Hauptbildschirm ein zentriertes Fenster. Beachten Sie, dass es zwei, drei oder vier Parameter haben kann:
` Projektmethode OPEN CENTERED WINDOW ` $1 Fensterbreite ` $2 Fensterhöhe ` $3 Fenstertyp (optional) ` $4 Fenstertitel (optional) $SW:=Screen width\2 $SH:=(Screen height\2) $WW:=$1\2 $WH:=$2\2 Case of : (Count parameters=2) Open window($SW-$WW;$SH-$WH;$SW+$WW;$SH+$WH) : (Count parameters=3) Open window($SW-$WW;$SH-$WH;$SW+$WW;$SH+$WH;$3) : (Count parameters=4) Open window($SW-$WW;$SH-$WH;$SW+$WW;$SH+$WH;$3;$4) End case
Diese Projektmethode können Sie beispielsweise so einsetzen:
OPEN CENTERED WINDOW (400;250;Movable dialog box;"Update Archives") DIALOG([Utility Table];"UPDATE OPTIONS") CLOSE WINDOW If (OK=1) ` ... End if
2. Folgendes Beispiel öffnet ein Palettenfenster, das eine Methode für die Kontrollmenü-Box (Windows) bzw. Schließbox (Macintosh) enthält. Dieses Fenster öffnet sich in der oberen rechten Ecke des Anwendungsfensters.
Open window(Screen width-149;33;Screen width-4;178;- Palette window;""; "Schließe Farbpalette") DIALOG([Dialogs];"Farbpalette")
Die Methode CloseColorPalette ruft den Befehl CANCEL auf:
CANCEL
3. Folgendes Beispiel öffnet ein Fenster, das die Größe und Titel über die Eigenschaften des im Fenster angezeigten Formulars erhält:
INPUT FORM([Customers];"Füge Datensätze hinzu";*) Open window(10;80;-1;-1;Plain window;"") Repeat ADD RECORD([Customers]) Until (OK=0)
Zur Erinnerung: Open window verwendet nur dann automatisch die Einstellungen des Formulars, wenn Sie zuvor den Befehl INPUT FORM mit dem optionalen Parameter * aufgerufen haben und in der Designumgebung im Fenster Formulareigenschaften Werte festgelegt haben.
4. Folgendes Beispiel zeigt den Verzögerungsmechanismus zum Anzeigen von Sheet Fenstern unter Mac OS X:
$myWindow:=Open window(10;10;400;400;Sheet window) `Momentan wird das Fenster erstellt, bleibt jedoch ausgeblendet. DIALOG([Table];"dialForm") `Das Ereignis On Load wird erstellt, dann rollt das Sheet Fenster von der Titelleiste her auf.
Referenz
CLOSE WINDOW, Open external window, Open form window.