PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Traitements effectués lors de la fermeture
  • Fermeture en fonction du type de fenêtre
  • Dernière fenêtre d'un projet
  • Première fenêtre d'un projet
  • Valeur renvoyée à la fonction Ouvre
  • Valeur renvoyée lors de la fermeture d'une fenêtre fille
  • Combinaison des touches [ALT] et [F4]
  • Équivalence
Produits
WinDevWebDev - Code ServeurWebDev - Code NavigateurWinDev MobileEtats et Requêtes
Plateformes
WindowsLinuxWindows MobileUniversal Windows 10 AppAndroidWidget AndroidiPhone/iPadApple Watch
Langages
JavaPHPAjaxCode Utilisateur (MCU)Langage Externe
Bases de données
HFSQLHFSQL Client/ServeurProcédures stockéesOLE DBODBCAccès Natifs
Ferme une fenêtre WINDEV (en renvoyant si nécessaire une valeur).
Versions 15 et supérieures
WinDev MobileAndroid Cette fonction est désormais disponible pour les applications Android.
Nouveauté 15
WinDev MobileAndroid Cette fonction est désormais disponible pour les applications Android.
WinDev MobileAndroid Cette fonction est désormais disponible pour les applications Android.
Versions 16 et supérieures
WinDevLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
WinDev MobileUniversal Windows 10 App Cette fonction est désormais disponible pour les applications Windows Phone.
Nouveauté 16
WinDevLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
WinDev MobileUniversal Windows 10 App Cette fonction est désormais disponible pour les applications Windows Phone.
WinDevLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
WinDev MobileUniversal Windows 10 App Cette fonction est désormais disponible pour les applications Windows Phone.
Versions 17 et supérieures
WinDev MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Nouveauté 17
WinDev MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
WinDev MobileiPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Versions 18 et supérieures
WinDevWinDev MobileUniversal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Nouveauté 18
WinDevWinDev MobileUniversal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
WinDevWinDev MobileUniversal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Versions 21 et supérieures
WinDev MobileApple Watch Cette fonction est désormais disponible en mode Apple Watch.
WinDevWinDev MobileUniversal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
WinDev MobileApple Watch Cette fonction est désormais disponible en mode Apple Watch.
WinDevWinDev MobileUniversal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
WinDev MobileApple Watch Cette fonction est désormais disponible en mode Apple Watch.
WinDevWinDev MobileUniversal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Exemple
// Fermeture de la fenêtre "FEN_Saisie"
Ferme(FEN_Saisie)
Versions 19 et supérieures
WinDevWinDev MobileEtats et RequêtesWindowsLinuxWindows MobileiPhone/iPadApple WatchCode Utilisateur (MCU)
// Fermeture de la fenêtre "FEN_SaisieLogin"
// avec récupération de plusieurs valeurs de retour
Ferme(FEN_SaisieLogin, Nom, Prénom)
Nouveauté 19
WinDevWinDev MobileEtats et RequêtesWindowsLinuxWindows MobileiPhone/iPadApple WatchCode Utilisateur (MCU)
// Fermeture de la fenêtre "FEN_SaisieLogin"
// avec récupération de plusieurs valeurs de retour
Ferme(FEN_SaisieLogin, Nom, Prénom)
WinDevWinDev MobileEtats et RequêtesWindowsLinuxWindows MobileiPhone/iPadApple WatchCode Utilisateur (MCU)
// Fermeture de la fenêtre "FEN_SaisieLogin"
// avec récupération de plusieurs valeurs de retour
Ferme(FEN_SaisieLogin, Nom, Prénom)
Syntaxe
Ferme([<Nom de la fenêtre> [, <Valeur renvoyée>, ... [, <Valeur renvoyée N>]]])
<Nom de la fenêtre> : Chaîne de caractères optionnelle (avec ou sans guillemets)
Nom de la fenêtre à fermer. Si ce paramètre n'est pas précisé ou correspond à une chaîne vide (""), la fenêtre en cours est fermée.
<Valeur renvoyée> : Type correspondant à la valeur renvoyée (optionnel)
Valeur renvoyée par la fenêtre lors de sa fermeture.
WinDevWindows MobileJava Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction Ouvre.

Versions 18 et supérieures
Universal Windows 10 AppAndroidiPhone/iPadApple Watch Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction OuvreFille.
Nouveauté 18
Universal Windows 10 AppAndroidiPhone/iPadApple Watch Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction OuvreFille.
Universal Windows 10 AppAndroidiPhone/iPadApple Watch Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction OuvreFille.
Universal Windows 10 AppAndroidiPhone/iPadApple Watch Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction OuvreFenêtreMobile (ou la fonction OuvreFille).
Il est possible de renvoyer :
  • des types simples (chaîne de caractères, booléen, ...).
  • Versions 15 et supérieures
    des types avancés : structure, structure dynamique, classe, type avancé, tableau, tableau associatif, file, pile, liste.
    Nouveauté 15
    des types avancés : structure, structure dynamique, classe, type avancé, tableau, tableau associatif, file, pile, liste.
    des types avancés : structure, structure dynamique, classe, type avancé, tableau, tableau associatif, file, pile, liste.
<Valeur renvoyée N> : Type correspondant à la valeur renvoyée (optionnel)
Versions 19 et supérieures
WinDevWinDev MobileEtats et RequêtesWindowsLinuxWindows MobileiPhone/iPadApple WatchCode Utilisateur (MCU) Valeur N renvoyée par la fenêtre lors de sa fermeture (cas où plusieurs valeurs sont renvoyées).
WinDevWindows Mobile Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction Ouvre.

iPhone/iPadApple Watch Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction OuvreFenêtreMobile (ou la fonction OuvreFille).
Il est possible de renvoyer :
  • des types simples (chaîne de caractères, booléen, ...).
  • des types avancés : structure, structure dynamique, classe, type avancé, tableau, tableau associatif, file, pile, liste.
Nouveauté 19
WinDevWinDev MobileEtats et RequêtesWindowsLinuxWindows MobileiPhone/iPadApple WatchCode Utilisateur (MCU) Valeur N renvoyée par la fenêtre lors de sa fermeture (cas où plusieurs valeurs sont renvoyées).
WinDevWindows Mobile Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction Ouvre.

iPhone/iPadApple Watch Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction OuvreFenêtreMobile (ou la fonction OuvreFille).
Il est possible de renvoyer :
  • des types simples (chaîne de caractères, booléen, ...).
  • des types avancés : structure, structure dynamique, classe, type avancé, tableau, tableau associatif, file, pile, liste.
WinDevWinDev MobileEtats et RequêtesWindowsLinuxWindows MobileiPhone/iPadApple WatchCode Utilisateur (MCU) Valeur N renvoyée par la fenêtre lors de sa fermeture (cas où plusieurs valeurs sont renvoyées).
WinDevWindows Mobile Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction Ouvre.

iPhone/iPadApple Watch Cette valeur est récupérée uniquement si la fenêtre a été ouverte avec la fonction OuvreFenêtreMobile (ou la fonction OuvreFille).
Il est possible de renvoyer :
  • des types simples (chaîne de caractères, booléen, ...).
  • des types avancés : structure, structure dynamique, classe, type avancé, tableau, tableau associatif, file, pile, liste.
Remarques

Traitements effectués lors de la fermeture

  • Lors de la fermeture d'une fenêtre :
    1. Le traitement en cours est interrompu définitivement.
    2. Le code de fermeture de la fenêtre est exécuté.
  • Si la fonction RepriseSaisie est appelée dans le traitement de fermeture, la fenêtre n'est pas fermée.
  • Si la fonction Ferme est exécutée dans une procédure appelée par Timer, il est nécessaire de tester l'existence de la fenêtre à fermer avec les fonctions FenEtat ou FenEnCours, sinon toutes les fenêtres ouvertes risquent d'être fermées. Par exemple :
    // Procédure appelée par timer
    Fenêtre est une chaîne
    Fenêtre = FenEnCours()
    SI Fenêtre <> "Nom fenêtre" ALORS
    Ferme()
    FIN

Fermeture en fonction du type de fenêtre

  • Si la fenêtre à fermer est une fenêtre mère ayant des fenêtre filles, ces fenêtres filles sont fermées en premier (leur code de fermeture est exécuté).
  • Si la fenêtre à fermer est une fenêtre fille, la fenêtre mère devient la fenêtre en cours. Le code de prise de focus de la fenêtre mère est exécuté.

Dernière fenêtre d'un projet

Si la dernière fenêtre d'un projet est fermée, le code de "Fermeture" du projet est exécuté avant la fin du programme.

Première fenêtre d'un projet

iPhone/iPadApple Watch La fonction Ferme utilisée sur la première fenêtre du projet est équivalente à la terminaison de l'application. Cette fonction ne doit être utilisée que pour le débogage car la terminaison d'application est interdite par la licence de ce type de matériel.
WinDevWinDev MobileEtats et RequêtesWindows MobileJavaCode Utilisateur (MCU)

Valeur renvoyée à la fonction Ouvre

Il est possible de renvoyer, à l'aide de la fonction Ferme, une valeur à la fonction Ouvre.Il est possible de renvoyer, à l'aide de la fonction Ferme, une valeur ou plusieurs à la fonction Ouvre.
Rappel : Il est également possible de renvoyer une valeur à l'aide de la propriété ..ValeurRenvoyée (<Nom de la fenêtre>..ValeurRenvoyée) exécutée avant la fonction Ferme. Dans ce cas, une seule valeur peut être renvoyée.
Exemples :
  • L'utilisateur doit saisir un mot de passe dans une fenêtre. Ce mot de passe saisi est récupéré lors de la fermeture de cette fenêtre et renvoyé à la fonction Ouvre :
    MonMotDePasse = Ouvre(FEN_SaisieMotDePasse)
    SI MonMotDePasse <> "" ALORS
            Info("Mot de passe incorrect")
    FIN

    // -- Code de clic sur le bouton "OK" de la fenêtre "FEN_SaisieMotDePasse"
    // L'utilisateur saisit son mot de passe dans le champ SAI_MotDePasse
    // et valide la fenêtre.
    Ferme("", SAI_MotDePasse)
  • Versions 19 et supérieures
    L'utilisateur doit saisir un login et un mot de passe dans une fenêtre. Ce login et mot de passe saisi sont récupérés lors de la fermeture de cette fenêtre et renvoyés à la fonction Ouvre :
    (MonLogin, MonMotDePasse) = Ouvre(FEN_SaisieMotDePasse)
    SI MonLogin <> "" OU MonMotDePasse <> "" ALORS
    Info("Login ou mot de passe incorrect")
    FIN

    // -- Code de clic sur le bouton "OK" de la fenêtre "FEN_SaisieMotDePasse"
    // L'utilisateur saisit son login et son mot de passe
    // dans le champ SAI_MotDePasse et valide la fenêtre.
    Ferme("", SAI_Login, SAI_MotDePasse)
    Nouveauté 19
    L'utilisateur doit saisir un login et un mot de passe dans une fenêtre. Ce login et mot de passe saisi sont récupérés lors de la fermeture de cette fenêtre et renvoyés à la fonction Ouvre :
    (MonLogin, MonMotDePasse) = Ouvre(FEN_SaisieMotDePasse)
    SI MonLogin <> "" OU MonMotDePasse <> "" ALORS
    Info("Login ou mot de passe incorrect")
    FIN

    // -- Code de clic sur le bouton "OK" de la fenêtre "FEN_SaisieMotDePasse"
    // L'utilisateur saisit son login et son mot de passe
    // dans le champ SAI_MotDePasse et valide la fenêtre.
    Ferme("", SAI_Login, SAI_MotDePasse)
    L'utilisateur doit saisir un login et un mot de passe dans une fenêtre. Ce login et mot de passe saisi sont récupérés lors de la fermeture de cette fenêtre et renvoyés à la fonction Ouvre :
    (MonLogin, MonMotDePasse) = Ouvre(FEN_SaisieMotDePasse)
    SI MonLogin <> "" OU MonMotDePasse <> "" ALORS
    Info("Login ou mot de passe incorrect")
    FIN

    // -- Code de clic sur le bouton "OK" de la fenêtre "FEN_SaisieMotDePasse"
    // L'utilisateur saisit son login et son mot de passe
    // dans le champ SAI_MotDePasse et valide la fenêtre.
    Ferme("", SAI_Login, SAI_MotDePasse)
Versions 18 et supérieures
Universal Windows 10 AppAndroidiPhone/iPadApple Watch

Valeur renvoyée lors de la fermeture d'une fenêtre fille

La fonction Ferme permet de renvoyer une valeur à la fenêtre mère qui a ouverte la fenêtre fille.
Rappel : Il est également possible de renvoyer une valeur à l'aide de la propriété ..ValeurRenvoyée (<Nom de la fenêtre>..ValeurRenvoyée) exécutée avant la fonction Ferme.
La valeur renvoyée par la fenêtre fille pourra être lue dans le traitement "Fermeture d'une fenêtre fille" de la fenêtre ayant ouvert la fenêtre fille (celle qui a utilisé la fonction OuvreFille) : il suffit d'utiliser la propriété ..ValeurRenvoyée sur le mot-clé MaFenêtreFille. La valeur renvoyée par la fenêtre fille pourra être lue dans le traitement "Fermeture d'une fenêtre fille" de la fenêtre ayant ouvert la fenêtre fille (celle qui a utilisé la fonction OuvreFenêtreMobile ou OuvreFille) : il suffit d'utiliser la propriété ..ValeurRenvoyée sur le mot-clé MaFenêtreFille.
Par exemple :
  • Dans le code de fermeture de la fenêtre fille, la fonction Ferme est utilisée pour renvoyer un paramètre :
    Ferme("", MonParamètre)
  • Dans le traitement "Fermeture d'une fenêtre fille" de la fenêtre appelante, le nom de la fenêtre fille ainsi que la valeur renvoyée peuvent être récupérés en utilisant le mot-clé MafenêtreFille :
    // Fermeture d'une fenêtre fille
    NomFenêtreFille = MaFenêtreFille..Nom
    ValeurFenêtreFille = MaFenêtreFille..ValeurRenvoyée
Nouveauté 18
Universal Windows 10 AppAndroidiPhone/iPadApple Watch

Valeur renvoyée lors de la fermeture d'une fenêtre fille

La fonction Ferme permet de renvoyer une valeur à la fenêtre mère qui a ouverte la fenêtre fille.
Rappel : Il est également possible de renvoyer une valeur à l'aide de la propriété ..ValeurRenvoyée (<Nom de la fenêtre>..ValeurRenvoyée) exécutée avant la fonction Ferme.
La valeur renvoyée par la fenêtre fille pourra être lue dans le traitement "Fermeture d'une fenêtre fille" de la fenêtre ayant ouvert la fenêtre fille (celle qui a utilisé la fonction OuvreFille) : il suffit d'utiliser la propriété ..ValeurRenvoyée sur le mot-clé MaFenêtreFille. La valeur renvoyée par la fenêtre fille pourra être lue dans le traitement "Fermeture d'une fenêtre fille" de la fenêtre ayant ouvert la fenêtre fille (celle qui a utilisé la fonction OuvreFenêtreMobile ou OuvreFille) : il suffit d'utiliser la propriété ..ValeurRenvoyée sur le mot-clé MaFenêtreFille.
Par exemple :
  • Dans le code de fermeture de la fenêtre fille, la fonction Ferme est utilisée pour renvoyer un paramètre :
    Ferme("", MonParamètre)
  • Dans le traitement "Fermeture d'une fenêtre fille" de la fenêtre appelante, le nom de la fenêtre fille ainsi que la valeur renvoyée peuvent être récupérés en utilisant le mot-clé MafenêtreFille :
    // Fermeture d'une fenêtre fille
    NomFenêtreFille = MaFenêtreFille..Nom
    ValeurFenêtreFille = MaFenêtreFille..ValeurRenvoyée
Universal Windows 10 AppAndroidiPhone/iPadApple Watch

Valeur renvoyée lors de la fermeture d'une fenêtre fille

La fonction Ferme permet de renvoyer une valeur à la fenêtre mère qui a ouverte la fenêtre fille.
Rappel : Il est également possible de renvoyer une valeur à l'aide de la propriété ..ValeurRenvoyée (<Nom de la fenêtre>..ValeurRenvoyée) exécutée avant la fonction Ferme.
La valeur renvoyée par la fenêtre fille pourra être lue dans le traitement "Fermeture d'une fenêtre fille" de la fenêtre ayant ouvert la fenêtre fille (celle qui a utilisé la fonction OuvreFille) : il suffit d'utiliser la propriété ..ValeurRenvoyée sur le mot-clé MaFenêtreFille. La valeur renvoyée par la fenêtre fille pourra être lue dans le traitement "Fermeture d'une fenêtre fille" de la fenêtre ayant ouvert la fenêtre fille (celle qui a utilisé la fonction OuvreFenêtreMobile ou OuvreFille) : il suffit d'utiliser la propriété ..ValeurRenvoyée sur le mot-clé MaFenêtreFille.
Par exemple :
  • Dans le code de fermeture de la fenêtre fille, la fonction Ferme est utilisée pour renvoyer un paramètre :
    Ferme("", MonParamètre)
  • Dans le traitement "Fermeture d'une fenêtre fille" de la fenêtre appelante, le nom de la fenêtre fille ainsi que la valeur renvoyée peuvent être récupérés en utilisant le mot-clé MafenêtreFille :
    // Fermeture d'une fenêtre fille
    NomFenêtreFille = MaFenêtreFille..Nom
    ValeurFenêtreFille = MaFenêtreFille..ValeurRenvoyée

Combinaison des touches [ALT] et [F4]

La combinaison de touches [ALT][F4] peut avoir plusieurs comportements :
  • Si la fenêtre comporte un bouton de type "Abandon", le traitement associé au bouton d'abandon est exécuté.
  • Si la fenêtre comporte un bouton ayant [ALT][F4] comme lettre d'appel, le traitement associé à ce bouton est exécuté.
  • Si la fenêtre ne comporte ni de bouton d'abandon, ni de bouton ayant [ALT][F4] comme lettre d'appel, le traitement de fermeture de la fenêtre est exécuté et la fenêtre est fermée (sauf si la fonction RepriseSaisie est utilisée).
  • Si la fenêtre est ouverte depuis un programme en langage externe, [ALT][F4] retourne "ESC" dans WdTouche.

Équivalence

La ligne de code suivante :
FenEtat(<NomFenêtre>, Inexistant)
est équivalente à :
Ferme(<NomFenêtre>)
Composantes
WinDevEtats et Requêtes wd210obj.dll
Windows Mobile wp210obj.dll
Java wd210java.jar
Linux wd210obj.so
Android wd210android.jar
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire