Creer fenetre

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 (Modifiée)


Creer fenetre (gauche; haut; droite; bas{; type{; titre{; caseFermeture}}}){ RefFen }

ParamètreTypeDescription
gaucheNumériqueCoordonnée gauche de l'intérieur de la fenêtre
hautNumériqueCoordonnée supérieure de l'intérieur de la fenêtre
droiteNumériqueCoordonnée droite de l'intérieur de la fenêtre
basNumériqueCoordonnée inférieure de l'intérieur de la fenêtre
typeNumériqueType de la fenêtre
titreAlphaTitre de la fenêtre
caseFermetureAlphaMéthode à appeler en cas de double-clic sur la case
du menu Système ou de clic sur la case de
fermeture
RésultatRefFenNuméro de référence de la fenêtre

Description

Creer fenetre ouvre une nouvelle fenêtre dont les dimensions sont définies par les quatre premiers paramètres :

gauche est la distance en pixels entre le côté gauche de la fenêtre de l'application et le côté intérieur gauche de la fenêtre.

haut est la distance en pixels entre le haut de la fenêtre de l'application et le bord supérieur de l'intérieur de la fenêtre.

droite est la distance en pixels entre le côté gauche de la fenêtre de l'application et le côté intérieur droit de la fenêtre.

bas est la distance en pixels entre le haut de la fenêtre de l'application et le bord inférieur de l'intérieur de la fenêtre.

Si vous passez -1 dans droite et bas,vous indiquez à 4D qu'il faut redimensionner automatiquement la fenêtre si les conditions suivantes sont réunies :

Vous avez conçu un formulaire et défini ses options de dimensionnement dans la fenêtre des propriétés des formulaires du mode Structure.

Avant d'appeler Creer fenetre vous avez sélectionné le formulaire à l'aide de la commande FORMULAIRE ENTREE, à laquelle vous avez passé le paramètre optionnel *.

Important : Ce dimensionnement automatique de la fenêtre n'aura lieu que si vous avez au préalable appelé la commande FORMULAIRE ENTREE pour le formulaire que vous allez afficher dans la fenêtre, et si vous lui avez passé le paramètre optionnel *.

Le paramètre type est optionnel. Il définit le type de fenêtre que vous souhaitez afficher, et correspond aux différentes fenêtres présentées dans la section Types de fenêtres. Si le type passé est négatif, la fenêtre sera flottante. Si le type n'est pas spécifié, le type 1 est utilisé par défaut.

Le paramètre titre indique le titre (optionnel) de la fenêtre.

Si vous passez une chaîne de caractères vide ("") dans titre, vous indiquez à 4D d'utiliser les valeurs saisies dans la zone Nom de la fenêtre de la fenêtre des Propriétés du formulaire en mode Structure pour le titre du formulaire que vous allez afficher dans la fenêtre.

Important : Le nom par défaut du formulaire ne sera appliqué à la fenêtre que si vous avez appelé la commande FORMULAIRE ENTREE pour le formulaire que vous allez afficher dans la fenêtre et si vous lui avez passé le paramètre optionnel *.

Le paramètre caseFermeture, optionnel, désigne la méthode de gestion de la fermeture de la fenêtre. Si ce paramètre est passé, la case du menu Système (sous Windows) ou une case de fermeture (sous Mac OS) est ajoutée à la fenêtre. Lorsque l'utilisateur Windows double-clique sur la case du menu Système ou que l'utilisateur Mac OS clique sur la case de fermeture, la méthode passée dans caseFermeture est exécutée.

Note version 6 : Vous pouvez aussi gérer la fermeture à partir de la méthode du formulaire affiché dans la fenêtre pendant l'événement Sur case de fermeture. Pour plus d'informations sur ce point, reportez-vous à la commande Evenement formulaire.

Si plusieurs fenêtres sont ouvertes dans le même process, la dernière fenêtre créée est la fenêtre active (de premier plan) du process. Seules les informations situées dans la fenêtre active peuvent être modifiées. Toutes les autres fenêtres peuvent être visualisées. Lorsque l'utilisateur tape une touche du clavier, la fenêtre active vient toujours se placer au premier plan, si elle n'y est pas déjà.

Les formulaires sont affichés à l'intérieur de fenêtres ouvertes à l'écran. Le texte passé à la commande MESSAGE est également affiché dans une fenêtre.

Exemples

(1) La méthode projet suivante ouvre une fenêtre centrée dans la fenêtre principale (sous Windows) ou dans l'écran principal (sous Mac OS). Notez qu'elle accepte deux, trois ou quatre paramètres :

   ` Méthode projet OUVRIR FENETRE CENTREE 
   ` $1 – Largeur de la fenêtre 
   ` $2 – Hauteur de la fenêtre 
   ` $3 – Type de la fenêtre (optionnel) 
   ` $4 – Titre de la fenêtre (optionnel) 
   $SW:=Largeur ecran\2   
   $SH:=(Hauteur ecran\2)-10  
   $WW:=$1\2  
   $WH:=$2\2 
   Au cas ou 
      : (Nombre de parametres=2) 
         Creer fenetre($SW-$WW;$SH-$WH;$SW+$WW;$SH+$WH) 
      : (Nombre de parametres=3) 
         Creer fenetre($SW-$WW;$SH-$WH;$SW+$WW;$SH+$WH;$3) 
      : (Nombre de parametres=4) 
         Creer fenetre($SW-$WW;$SH-$WH;$SW+$WW;$SH+$WH;$3;$4) 
   Fin de cas

Une fois que cette méthode projet est écrite, vous pouvez l'utiliser de la manière suivante :

   OUVRIR FENETRE CENTREE (400;250;Dialogue simple;"Mise à jour Archives")
   DIALOGUE([Table outils];"OPTIONS MAJ")
   FERMER FENETRE 
   Si (OK=1)
      ` ...
   Fin de si

(2) L'exemple suivant crée une fenêtre flottante comportant une case de menu système (sous Windows) ou une case de fermeture (sous Mac OS). La fenêtre est créée dans le coin supérieur droit de la fenêtre de l'application.

   Creer fenetre(Largeur ecran-149;33;Largeur ecran-4;178;-Fenêtre palette;"";"caseFermeture")
   DIALOGUE([Dialogues];"Palette de couleurs")

La méthode caseFermeture appelle la commande NE PAS VALIDER :

   NE PAS VALIDER 

(3) L'exemple suivant ouvre une fenêtre dont le titre et la taille proviennent des propriétés du formulaire affiché dans la fenêtre :

   FORMULAIRE ENTREE([Clients];"Ajout d'enregistrements";*)
   Creer fenetre(10;80;-1;-1;Fenêtre standard;"")
   Repeter
      AJOUTER ENREGISTREMENT([Clients])
   Jusque (OK=0)

Rappel : Pour que la fonction Creer fenetre utilise automatiquement les propriétés du formulaire, vous devez avoir appelé FORMULAIRE ENTREE avec le paramètre optionnel * et les propriétés du formulaire doivent avoir été définies en fonction de cette utilisation.

(4) Cet exemple illustre le mécanisme de "retard" d'affichage des fenêtres feuille sous Mac OS X :

    $maFenêtre:=Creer fenetre(10;10;400;400;Fenêtre feuille)
      `A cet instant la fenêtre est créée mais reste invisible
   DIALOGUE([Table];"formDial")
      `L'événement Sur chargement est généré puis la fenêtre feuille est affichée, elle "descend"
      `du dessous de la barre de titre

Référence

Creer fenetre externe, Creer fenetre formulaire, FERMER FENETRE.


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