4D v13.4

Types de fenêtres

Accueil

 
4D v13.4
Types de fenêtres

Types de fenêtres  


 

 

Vous spécifiez le type de fenêtre à ouvrir avec Creer fenetre à l'aide d'une des constantes prédéfinies suivantes (thème Creer fenetre) :

Constante Type Valeur Commentaire
Fenêtre standard sans zoom Entier long 0
Dialogue modal Entier long 1
Dialogue simple Entier long 2 Utilisable en fenêtre flottante
Dialogue ombré Entier long 3 Utilisable en fenêtre flottante
Fenêtre standard de taille fixe Entier long 4
Dialogue modal déplaçable Entier long 5 Utilisable en fenêtre flottante
Fenêtre standard Entier long 8
Fenêtre à coins arrondis Entier long 16
Fenêtre pop up Entier long 32
Fenêtre feuille Entier long 33
Fenêtre feuille redim Entier long 34
Fenêtre palette Entier long 1984 Utilisable en fenêtre flottante
Aspect texture Entier long 2048
Mode compositing Entier long 4096 *** Constante obsolète ***
Avec bouton barre outils Mac OS Entier long 8192

Si vous passez une de ces constantes à Creer fenetre, vous créez une fenêtre standard. Pour ouvrir une fenêtre flottante, passez un type de fenêtre négatif à Creer fenetre.
Les fenêtres flottantes ont pour caractéristique principale de rester au premier plan même si l'utilisateur clique dans une autre fenêtre du process. Les fenêtres flottantes sont généralement utilisées pour afficher des informations permanentes ou des barres d'outils.

Une fenêtre modale place l'utilisateur dans un état (ou “mode”) où il ne peut agir qu'à l'intérieur de la fenêtre. Tant qu'une fenêtre modale est affichée, les commandes de menu et les autres fenêtres de l'application sont inaccessibles. Pour refermer une fenêtre modale, l'utilisateur doit la valider, l'annuler ou utiliser une des options qu'elle propose. Les boîtes de dialogue d'alerte sont des exemples typiques de fenêtres modales.
Dans 4D, les fenêtres de type 1 et 5 sont modales.

Note : Une fenêtre modale reste toujours au premier plan. Par conséquent, lorsqu'une fenêtre modale appelle une fenêtre non modale, cette dernière s'affiche en arrière-plan, bien qu'elle ait été appelée postérieurement. Il ne faut donc pas effectuer ce type d'opération.
En revanche, lorsqu'une fenêtre modale appelle une autre fenêtre modale, cette dernière s'affiche au premier plan.

Voici la description de chaque type de fenêtre, sous Windows (à gauche) et Mac OS (à droite).

  • Peut avoir un titre : Oui
  • Peut comporter une case de fermeture ou un équivalent : Oui
  • Peut être redimensionnée : Non sous Mac OS
  • Peut être agrandie/réduite ou "zoomée" : Non
  • Adaptée aux barres de défilement : Oui et Non
  • Utilisation : saisie de données par AJOUTER ENREGISTREMENT(...;...*) ou équivalent

  • Peut avoir un titre : Non
  • Peut comporter une case de fermeture ou un équivalent : Non
  • Peut être redimensionnée : Non
  • Peut être agrandie/réduite ou "zoomée" : Non
  • Adaptée aux barres de défilement : Non
  • Utilisation : DIALOGUE, AJOUTER ENREGISTREMENT(...;...*) ou équivalent
  • Les fenêtres de ce type sont modales

  • Peut avoir un titre : Oui
  • Peut comporter une case de fermeture ou un équivalent : Oui
  • Peut être redimensionnée : Oui
  • Peut être agrandie/réduite ou "zoomée" : Non sous Mac OS
  • Adaptée aux barres de défilement : Oui
  • Utilisation : saisie de données avec des barres de défilement, VISUALISER SELECTION, MODIFIER SELECTION, etc.

  • Peut avoir un titre : Oui
  • Peut comporter une case de fermeture ou un équivalent : Oui
  • Peut être redimensionnée : Oui
  • Peut être agrandie/réduite ou "zoomée" : Oui
  • Adaptée aux barres de défilement : Oui
  • Utilisation : saisie de données avec des barres de défilement, VISUALISER SELECTION, MODIFIER SELECTION, etc.

  • Peut avoir un titre : Oui
  • Peut comporter une case de fermeture ou un équivalent : Non
  • Peut être redimensionnée : Non
  • Peut être agrandie/réduite ou "zoomée" : Non
  • Adaptée aux barres de défilement : Non
  • Utilisation : DIALOGUE, AJOUTER ENREGISTREMENT(...;...*) ou équivalent
  • Les fenêtres de ce type sont modales mais peuvent être déplacées et utilisées comme fenêtres flottantes

  • Peut avoir un titre : Non
  • Peut comporter une case de fermeture ou un équivalent : Non
  • Peut être redimensionnée : Non
  • Peut être agrandie/réduite ou "zoomée" : Non
  • Adaptée aux barres de défilement : Non
  • Utilisation : DIALOGUE, AJOUTER ENREGISTREMENT(...;...*) ou équivalent, sous Mac OS (non standard sous Windows).

  • Peut avoir un titre : Non
  • Peut comporter une case de fermeture ou un équivalent : Non
  • Peut être redimensionnée : Non
  • Peut être agrandie/réduite ou "zoomée" : Non
  • Adaptée aux barres de défilement : Non
  • Utilisation : DIALOGUE, AJOUTER ENREGISTREMENT(...;...*) ou équivalent, sous Mac OS (non standard sous Windows).

Lorsque vous appelez Creer fenetre, vous pouvez additionner une ou plusieurs constantes supplémentaires (listées ci-dessous) à la constante Fenêtre palette afin de créer des variantes ayant des comportements différents :

Constante Type Valeur
Avec barre de titre active Entier long 1
Avec case de contrôle de taille Entier long 4
Avec case de zoom Entier long 8
Avec titre de fenêtre Entier long 2
  • Peut avoir un titre : Oui si la variante Avec titre de fenêtre est spécifiée
  • Peut comporter une case de fermeture ou un équivalent : Oui
  • Peut être redimensionnée : Oui si la variante Avec case de contrôle de taille est spécifiée
  • Peut être agrandie/réduite ou "zoomée" : Oui si la variante Avec case de zoom est spécifiée
  • Adaptée aux barres de défilement : Oui si la variante Avec case de contrôle de taille est spécifiée
  • Utilisation : fenêtres flottantes avec DIALOGUE ou VISUALISER SELECTION (pas de saisie de données).

  • Peut avoir un titre : Oui
  • Peut comporter une case de fermeture ou un équivalent : Oui
  • Peut être redimensionnée : Non sous Mac OS
  • Peut être agrandie/réduite ou "zoomée" : Non
  • Adaptée aux barres de défilement : Non
  • Utilisation : rare (obsolète)

Les fenêtres feuilles (sheet windows) sont des fenêtres spécifiques de l’interface Mac OS X. Ces fenêtres “descendent” de la barre de titre de la fenêtre principale via une animation et s’affichent par-dessus celle-ci. Elles sont automatiquement centrées dans la fenêtre principale. Leurs propriétés sont comparables à celles des boîtes de dialogue modales. Elles sont généralement utilisées pour effectuer une action en relation directe avec celle se déroulant dans la fenêtre principale.

  • Il n’est possible de créer une fenêtre feuille sous Mac OS X que si la dernière fenêtre ouverte est visible et de type document (formulaire).
  • La commande crée une fenêtre de type 1 (Dialogue modal) au lieu du type 33 et de type 8 (Fenêtre standard) au lieu du type 34 :
    • si la dernière fenêtre ouverte n’est pas visible ou n’est pas de type document,
    • sous Windows.
  • Comme une fenêtre feuille doit être dessinée par-dessus un formulaire, son affichage est repoussé dans l’événement Sur chargement du premier formulaire chargé dans la fenêtre (cf. exemple 4 de la commande Creer fenetre).
  • Utilisation : DIALOGUE, AJOUTER ENREGISTREMENT(...;...*) ou équivalent, sous Mac OS (non standard sous Windows).

Ce type de fenêtre reprend les caractéristiques essentielles du type Dialogue simple (2) et dispose de propriétés avancées spécifiques :

  • La fenêtre est automatiquement refermée avec annulation lorsque :
    • un clic se produit en-dehors de la fenêtre ;
    • la fenêtre d’arrière-plan ou la fenêtre MDI est déplacée ;
    • l’utilisateur appuie sur la touche Echap (ou Esc).
  • Cette fenêtre s’affiche devant une fenêtre “parente” (elle ne doit d'ailleurs pas être utilisée comme fenêtre principale d’un process). La fenêtre d’arrière-plan n’est pas désactivée. En revanche, elle ne reçoit plus d’événement.
  • Il n’est pas possible de redimensionner ou de déplacer la fenêtre à l’aide de la souris ; toutefois, lorsque cette opération est effectuée par programmation, le redessinement des éléments d’arrière-plan est optimisé.
  • Utilisation : ce type de fenêtre est particulièrement adapté à la prise en charge des pop up menus associés aux boutons 3D de type “bevel” ou “barres outils”.


Sous Mac OS, il est possible d’appliquer l’apparence “texturée” aux fenêtres. Ce type d'apparence est largement répandu dans l'interface Macintosh. Sous Windows, cette propriété est sans effet.

Pour appliquer l’apparence “texture” à une fenêtre générée par la commande Creer fenetre, il suffit d'ajouter la constante Aspect texture au type de fenêtre défini dans le paramètre type. Par exemple :

 $fen:=Creer fenetre(10;80;-1;-1;Fenêtre standard+Aspect texture;"")

Cette apparence peut être associée aux types de fenêtres suivants :

Fenêtre standard
Fenêtre standard sans zoom
Fenêtre standard de taille fixe
Dialogue modal déplaçable
Fenêtre à coins arrondis

Le mode "compositing" est un mode de gestion interne des fenêtres sous Mac OS X, notamment requis pour l'activation de l'aspect "métal" ou "texture" ainsi que l'affichage de certains objets dynamiques tels que les Zones Web.
Pour des raisons techniques, ce mode n'est utilisé dans les fenêtres de 4D que lorsque c'est nécessaire. Les fenêtres générées via les commandes Creer fenetre et Creer fenetre formulaire ne l'utilisent pas par défaut. Pour l'activer, il est nécessaire d'ajouter la constante Mode compositing (Creer fenetre) ou Form Mode compositing (Creer fenetre formulaire) au type de fenêtre lors de l'appel de la commande.
Sous Windows, cette propriété est sans effet.

Note : Certaines zones et fenêtres de 4D ne sont pas compatibles avec le mode compositing (en particulier les fenêtres générées par les commandes VISUALISER SELECTION et MODIFIER SELECTION ou encore les zones 4D Chart). L'utilisation du mode compositing dans ces contextes génère des dysfonctionnements à l'affichage.

Sous Mac OS, 4D permet d’afficher le bouton de gestion de la barre d’outils. Ce bouton standard permet alternativement d’afficher et de masquer la barre d’outils de la fenêtre :

Pour afficher la barre d’outils d'une fenêtre créée à l'aide de la commande Creer fenetre, il suffit d'ajouter la constante Avec bouton barre outils Mac OS. Par exemple :

 $NewWin:=Creer fenetre(10;10;1010;810;Fenêtre standard+Avec bouton barre outils Mac OS)

Lorsque la barre d’outils de la fenêtre est affichée, l'événement formulaire Sur bouton barre outils Mac est généré dans la méthode formulaire lorsque l’utilisateur clique sur le bouton de gestion de la barre d’outils de la fenêtre. Bien entendu, la propriété correspondante doit avoir été cochée dans les propriétés d’événement du formulaire.
Seul l’événement est généré, 4D n’effectue aucune autre action dans la fenêtre. Il revient au développeur de modifier la taille de la fenêtre et d’afficher ou masquer ses éléments d’interface.

 
PROPRIÉTÉS 

Produit : 4D
Thème : Fenêtres
Nom intl. : Window Types

 
VOIR AUSSI  

Creer fenetre
Creer fenetre externe
Creer fenetre formulaire