version 2004 (Modifiée)
Vous spécifiez le type de fenêtre à ouvrir avec Creer fenetre à l'aide d'une des constantes prédéfinies suivantes :
Constante | Type | Valeur | Fenêtre flottante |
Fenêtre standard | Entier long | 8 | Non |
Fenêtre standard sans zoom | Entier long | 0 | Non |
Fenêtre standard de taille fixe | Entier long | 4 | Non |
Dialogue modal | Entier long | 1 | Non |
Dialogue modal déplaçable | Entier long | 5 | Oui |
Dialogue simple | Entier long | 2 | Oui |
Dialogue ombré | Entier long | 3 | Oui |
Fenêtre palette | Entier long | 1984 | Oui |
Fenêtre à coins arrondis | Entier long | 16 | Non |
Fenêtre pop up | Entier long | 32 | Non |
Fenêtre feuille | Entier long | 33 | Non |
Fenêtre feuille redim | Entier long | 34 | Non |
Fenêtres flottantes
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.
Fenêtres modales
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
Vous trouverez ci-dessous une description de chaque type de fenêtre, sous Windows (à gauche) et Mac OS (à droite).
Fenêtre standard (8)
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.
Fenêtre standard sans zoom (0)
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.
Fenêtre standard de taille fixe (4)
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
Dialogue modal (1)
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
Dialogue modal déplaçable (5)
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
Dialogue ombré (3)
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).
Dialogue simple (2)
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).
Fenêtre palette ( 1984 {+ 1} {+ 2} {+ 4} {+ 8} )
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 case de zoom | Entier long | 8 |
Avec case de contrôle de taille | Entier long | 4 |
Avec titre de fenêtre | Entier long | 2 |
Avec barre de titre active | Entier long | 1 |
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).
Fenêtre à coins arrondis (16)
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)
Fenêtre pop up (32)
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".
Fenêtre feuille (33) et Fenêtre feuille redim (34)
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 identiques à 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).
Référence
Creer fenetre, Creer fenetre externe.