SET FORM SIZE

4D - Documentation   Français   English   German   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next

Version 2004


SET FORM SIZE ({Objekt; }Horizontal; Vertikal{; *})

ParameterTypBeschreibung
ObjektStringObjektname mit Angabe der Formulargrenzen
HorizontalLange GanzzahlMit *: Horizontaler Rand (Pixel)
Ohne *: Breite (Pixel)
VertikalLange GanzzahlMit *: Vertikaler Rand (Pixel)
Ohne *: Höhe (Pixel)
**Mit *: Fügt Ränder hinzu, definiert durch
Horizontal und Vertikal (Größe automatisch
oder basierend auf Objekt, sofern übergeben
Ohne Stern: Verwendet Horizontal und
Vertikal als Breite und Höhe des Formulars

Beschreibung

Mit dem Befehl SET FORM SIZE können Sie die Größe des aktuellen Formulars per Programmierung ändern. Die neue Größe wird für den aktuellen Prozess definiert; sie wird nicht mit dem Formular gespeichert. Analog zur Designumgebung können Sie diesen Befehl zum Setzen der Formulargröße folgendermaßen verwenden:

Automatisch — 4th Dimension bestimmt die Größe des Formulars so, dass alle Objekte sichtbar sind — und fügt evtl. einen horizontalen und vertikalen Rand hinzu.

An der Stelle, wo ein Formularobjekt gefunden wird, dem ein horizontaler und vertikaler Rand hinzugefügt werden kann.

Durch Eingeben "fester" Größen (Breite und Höhe).

Weitere Informationen zum Anpassen von Formularen finden Sie im Handbuch 4th Dimension Designmodus.

Automatische Größe

Um die Größe des Formulars automatisch zu setzen, verwenden Sie folgende Syntax:

   SET FORM SIZE(Objekt; horizontal; vertikal;*)

In diesem Fall übergeben Sie in Horizontal und Vertikal die Ränder in Pixel, die Sie im Formular rechts und unten hinzufügen wollen.

Objekt-basierte Größe

Um die Größe des Formulars objektbezogen zu setzen, verwenden Sie folgende Syntax:

   SET FORM SIZE(horizontal; vertikal)

In diesem Fall übergeben Sie in Horizontal und Vertikal die Ränder in Pixel, die Sie im Formular rechts und unten hinzufügen wollen.

Feste Größe

Um die Größe des Formulars mit fester Größe einzurichten, verwenden Sie folgende Syntax:

   SET FORM SIZE(horizontal; vertikal)

In diesem Fall übergeben Sie in Horizontal und Vertikal die Breite und Höhe (in Pixel) des Formulars.

SET FORM SIZE verändert die Größe des Formulars, berücksichtigt aber auch die Eigenschaften zum Anpassen. Ist z.B. für ein Formular als Mindestbreite 500 Pixel angegeben und setzt der Befehl die Breite auf 400 Pixel, wird die neue Formularbreite auf 500 Pixel gesetzt.

Beachten Sie auch, dass dieser Befehl nicht die Größe des Formularfensters verändert. (Sie können ein Formular ohne Verändern der Größe und umgekehrt anpassen). Um die Größe des Formulars anzupassen, verwenden Sie den Befehl RESIZE FORM WINDOW.

Beispiel

Folgendes Beispiel zeigt, wie ein Fenster vom Typ Explorer eingerichtet wird. In der Designumgebung wird folgendes Formular erstellt:

Die Größe des Formulars ist "automatisch".

Das Fenster wird über folgenden Code angezeigt:

   $ref:=Open form window([Table 1];"Form1";Standard form window; Horizontally centered;
                                 Vertically centered;*)
   DIALOG([Table 1];"Form1")
   

Sie können den rechten Teil des Fensters über das Kontrollkästchen am unteren Rand ein- bzw. ausblenden:

Die dazugehörige Objektmethode lautet:

   Case of 
   : (Form event=On load)
      C_BOOLEAN(b1;<>zugeklappt)
      C_LONGINT(margin)
      margin:=15
      b1:=<>zugeklappt
      If (<>zugeklappt)
         SET FORM HORIZONTAL RESIZING(False)
         SET FORM SIZE("b1";margin;margin)
      Else 
         SET FORM HORIZONTAL RESIZING(True)
         SET FORM SIZE("tab";margin;margin)
      End if 

   : (Form event=On click)
      <>collapsed:=b1
      If (b1)
            `zugeklappt
         GET OBJECT RECT(*;"b1";$l;$t;$r;$b)
         GET WINDOW RECT($lf;$tf;$rf;$bf;Current form window)
         SET WINDOW RECT($lf;$tf;$lf+$r+margin;$tf+$b+margin;
                                 Current form window)
         SET FORM HORIZONTAL RESIZING(False)
         SET FORM SIZE("b1";margin;margin)

      Else 
            `aufgeklappt
         GET OBJECT RECT(*;"tab";$l;$t;$r;$b)
         GET WINDOW RECT($lf;$tf;$rf;$bf;Current form window)
         SET WINDOW RECT($lf;$tf;$lf+$r+margin;$tf+$b+margin;
                                 Current form window)
         SET FORM HORIZONTAL RESIZING(True)
         SET FORM SIZE("tab";margin;margin)
      End if

   End case

Referenz

SET FORM HORIZONTAL RESIZING, SET FORM VERTICAL RESIZING.


4D - Documentation   Français   English   German   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next