FIXER TAILLE FORMULAIRE

4D - Documentation   Français   English   German   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant

version 2004


FIXER TAILLE FORMULAIRE ({objet; }horizontal; vertical{; *})

ParamètreTypeDescription
objetChaîneNom d'objet indiquant les limites du formulaire
horizontalEntier longSi * passé : marge horizontale (pixels)
Si * omis : largeur (pixels)
verticalEntier longSi * passé : marge verticale (pixels)
Si * omis : hauteur (pixels)
** Si passé, ajouter les marges définies par les
paramètres horizontal et vertical (taille automatique
ou taille basée sur objet, si objet est passé)
Si omis, utiliser horizontal et vertical comme
largeur et hauteur du formulaire

Description

La commande FIXER TAILLE FORMULAIRE permet de modifier par programmation la taille du formulaire courant. La nouvelle taille est définie pour le process courant, elle n'est pas stockée avec le formulaire.

Comme en mode Structure, cette commande permet de définir la taille d'un formulaire de trois manières :

automatiquement — 4e Dimension détermine la taille du formulaire sur le principe que tous les objets doivent être visibles — en ajoutant éventuellement une marge horizontale et une marge verticale,

sur la base de l'emplacement d'un objet du formulaire auquel s'ajoutent éventuellement une marge horizontale et une marge verticale,

en saisissant des dimensions "absolues" (largeur et hauteur).

Pour plus d'informations sur les possibilités de dimensionnement des formulaires, reportez-vous au manuel Mode Structure de 4e Dimension.

Taille automatique

Pour que le formulaire ait une taille automatique, vous devez utiliser la syntaxe suivante :

   FIXER TAILLE FORMULAIRE(horizontal; vertical;*)

Dans ce cas, vous devez passer dans horizontal et vertical les marges (en pixels) que vous souhaitez ajouter à droite et en bas du formulaire.

Taille basée sur un objet

Pour que la taille du formulaire soit basée sur un objet, vous devez utiliser la syntaxe suivante :

   FIXER TAILLE FORMULAIRE(objet; horizontal; vertical;*)

Dans ce cas, vous devez passer dans horizontal et vertical les marges (en pixels) que vous souhaitez ajouter à droite et en bas de l'objet.

Taille en valeur absolue

Pour passer une taille de formulaire absolue, vous devez utiliser la syntaxe suivante :

   FIXER TAILLE FORMULAIRE(horizontal; vertical)

Dans ce cas, vous devez passer dans horizontal et vertical la largeur et la hauteur (en pixels) du formulaire.

La commande FIXER TAILLE FORMULAIRE modifie la taille du formulaire mais tient compte de ses propriétés de redimensionnement. Par exemple, si la largeur minimale du formulaire est de 500 pixels et si la commande définit une largeur de 400 pixels, la nouvelle largeur du formulaire sera de 500 pixels.

A noter également que cette commande ne modifie pas la taille de la fenêtre du formulaire (il est possible de redimensionner un formulaire sans que la taille de la fenêtre soit modifiée, et inversement). Pour modifier la taille de la fenêtre d'un formulaire, reportez-vous à la description de la commande REDIMENSIONNER FENETRE FORMULAIRE.

Exemple

Voici un exemple de mise en place d'une fenêtre de type Explorateur. Le formulaire suivant est défini en mode Structure :

La taille du formulaire est "automatique".

La fenêtre est affichée via l'instruction suivante :

   $ref:=Creer fenetre formulaire([Table 1];"Form1";Form fenêtre standard; Centrée horizontalement;
                                 Centrée verticalement ;*)
   DIALOGUE([Table 1];"Form1")
   FERMER FENETRE

La partie droite de la fenêtre peut être affichée ou masquée via un clic sur l'option d'agrandissement/réduction :

La méthode objet associée à ce bouton est la suivante :

   Au cas ou 
   : (Evenement formulaire=Sur chargement )
      C_BOOLEEN(b1;<>contracté)
      C_ENTIER LONG(marge)
      marge:=15
      b1:=<>contracté
      Si (<>contracté)
         FIXER REDIMENSIONNEMENT FORMULAIRE HORIZONTAL(Faux)
         FIXER TAILLE FORMULAIRE("b1";marge;marge)
      Sinon 
         FIXER REDIMENSIONNEMENT FORMULAIRE HORIZONTAL(Vrai)
         FIXER TAILLE FORMULAIRE("onglet";marge;marge)
      Fin de si 

   : (Evenement formulaire=Sur clic)
      <>contracté:=b1
      Si (b1)
            `contracté
         LIRE RECT OBJET(*;"b1";$g;$h;$d;$b)
         COORDONNEES FENETRE($gf;$hf;$df;$bf;Fenetre formulaire courant)
         CHANGER COORDONNEES FENETRE($gf;$hf;$gf+$d+marge;$hf+$b+marge;
                                 Fenetre formulaire courant)
         FIXER REDIMENSIONNEMENT FORMULAIRE HORIZONTAL(Faux)
         FIXER TAILLE FORMULAIRE("b1";marge;marge)

      Sinon 
            `déployé
         LIRE RECT OBJET(*;"onglet";$g;$h;$d;$b)
         COORDONNEES FENETRE($gf;$hf;$df;$bf;Fenetre formulaire courant)
         CHANGER COORDONNEES FENETRE($gf;$hf;$gf+$d+marge;$hf+$b+marge;
                                 Fenetre formulaire courant)
         FIXER REDIMENSIONNEMENT FORMULAIRE HORIZONTAL(Vrai)
         FIXER TAILLE FORMULAIRE("onglet";marge;marge)
      Fin de si

   Fin de cas

Référence

FIXER REDIMENSIONNEMENT FORMULAIRE HORIZONTAL, FIXER REDIMENSIONNEMENT FORMULAIRE VERTICAL.


4D - Documentation   Français   English   German   4e Dimension, Commandes par thèmes   4e Dimension, Liste alphabétique des commandes   4e Dimension, Constantes par thèmes   Retour   Précédent   Suivant