DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion de Windows / Fonctions Boîtes de dialogue
  • Présentation
  • Les boîtes de dialogue simples
  • Les boîtes de dialogue avancées
  • Personnaliser les boites de dialogue
  • Programmation des boites de dialogue
  • Dialogue asynchrone
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
Les boîtes de dialogue sont des fenêtres standard permettant de dialoguer avec l'utilisateur. Il est ainsi possible de lui signaler une erreur, de lui demander une confirmation, ...
Les boîtes de dialogue comportent toujours les mêmes éléments :
  • Une icône permettant d'identifier rapidement le type du message affiché (Information, Question ou Erreur).
  • Un titre affiché dans la barre de titre.
  • Un ou plusieurs boutons permettant à l'utilisateur de choisir la réponse voulue. Le nombre et le type de ces boutons dépendent du type de la boîte de dialogue utilisée.
  • Un texte sur une ou plusieurs lignes correspondant au message destiné à l'utilisateur.
Différentes boîtes de dialogue sont disponibles :
Il est possible de :
Les boîtes de dialogue simples
Plusieurs types de boîtes de dialogue sont disponibles :
  • Les boîtes d'information ou d'erreur. Par exemple :
    Avertissement
  • Les boîtes de question. Par exemple :
    Oui / Non
  • Les boîtes de confirmation. Par exemple :
    Dialogue
Remarques :
  • Dans chaque type de boîte de dialogue, il est possible de choisir le bouton à sélectionner par défaut.
  • Le libellé des boutons s'affiche dans la langue utilisée par Windows sur le poste en cours.
  • Selon la plateforme utilisée, certaines fonctions peuvent ne pas être disponibles.
Les boîtes de dialogue avancées
Les boîtes de dialogue avancées permettent de gérer :
  • WindowsAndroidiPhone/iPadJava la saisie immédiate.
    La saisie immédiate permet d'éviter la création d'une nouvelle fenêtre pour saisir uniquement une information. Grâce à la fonction Saisie, vous pouvez utiliser une simple boîte de dialogue pour saisir une donnée (champ de saisie ou case à cocher). L'utilisateur peut valider ou annuler la saisie.
  • l'interrogation directive.
    L'interrogation directive consiste à guider l'utilisateur dans la saisie de sa réponse, pour éviter toute ambiguïté : l'utilisateur répond à une question grâce à des boutons contenant le texte de l'action à effectuer.
    La fonction Dialogue propose via un assistant :
    • soit de sélectionner un message déjà existant, présent dans la base des messages.
    • soit de créer un nouveau message grâce à une fenêtre très simple.
    Lorsque les différentes caractéristiques du message sont saisies, le code correspondant est automatiquement généré.
Remarque : Base de messages de l'interrogation directive
WINDEV propose une liste de messages par défaut. Ces messages ne peuvent pas être supprimés. Ils constituent la base des messages. Lors de la création d'un message, ce message est automatiquement ajouté à la base de messages. Par défaut, la base de messages est présente dans le répertoire "Personal\Message" de WINDEV.
Ce répertoire peut être modifié dans les options de WINDEV :
  1. Sous le volet "Accueil", dans le groupe "Environnement", déroulez "Options" et sélectionnez "Options générales de WINDEV".
  2. Dans l'onglet "Répertoires", spécifiez le répertoire voulu pour la base des messages.
Pour supprimer un message de la base de messages :
  1. Affichez l'éditeur de code.
  2. Sous le volet "Code", dans le groupe "Langues", déroulez "Traduire les chaînes" et sélectionnez "Interrogations directives".
  3. Sélectionnez le message à supprimer et cliquez sur Icône Supprimer.
Personnaliser les boites de dialogue
Les boîtes de dialogue affichées peuvent :
  • utiliser le look système.
  • WINDEV proposer les FAA (Fonctionnalités Automatiques de vos Applications). L'utilisateur pourra ainsi paramétrer par exemple le raccourci clavier associé à chaque bouton ou l'exécution automatique du bouton.
    Remarque : A partir de la version 28 U2 (version 280075), cette fonctionnalité est disponible par défaut pour les nouveaux projets.
  • être entièrement personnalisées. Il est ainsi possible de leur appliquer automatiquement le gabarit de l'application en cours ou d'utiliser des boîtes de dialogue multilingues.
Pour plus de détails, consultez Personnaliser les boîtes de dialogue.
Programmation des boites de dialogue
Les fonctions permettant de gérer un dialogue avec l'utilisateur sont les suivantes :
AvertissementAffiche un message personnalisé dans une fenêtre d'avertissement système.
ConfirmerAffiche un message dans une boîte de dialogue standard proposant les réponses "Oui", "Non", "Annuler" et renvoie la réponse de l'utilisateur.
DialogueAffiche une boîte de message et renvoie la valeur du bouton cliqué par l'utilisateur.
ErreurAffiche un message d'erreur personnalisé dans une fenêtre d'erreur système.
InfoAffiche un message personnalisé dans une fenêtre d'information système.
OKAnnulerAffiche un message dans une boîte de dialogue standard proposant les réponses "OK" et "Annuler" et renvoie la réponse de l'utilisateur.
OuiNonAffiche un message dans une boîte de dialogue standard proposant les réponses "Oui" et "Non" et renvoie la réponse de l'utilisateur.
SaisieAffiche un message en permettant à l'utilisateur de saisir une information.
Par défaut, les boîtes de dialogue affichées sont bloquantes.
Pour que ces boîtes de dialogue ne soient pas bloquantes, il est possible de :
  • fermer automatiquement ces boîtes de dialogue. En effet, par défaut, les boîtes de dialogue sont fermées uniquement lors de l'action de l'utilisateur sur un des boutons de la boîte. Si aucun bouton n'est enfoncé, l'application est bloquée.
    Pour éviter tout risque de blocage, il suffit d'utiliser la fonction DélaiAvantFermeture en indiquant la durée voulue avant la fermeture automatique de la boîte de dialogue.
  • utiliser les fonctions ErreurAvecDélai et InfoAvecDélai qui permettent de ne pas bloquer l'application lors de l'affichage de ces boîtes d'information ou d'erreur.
  • utiliser les fonctions de dialogue asynchrone.
WINDEVAndroidiPhone/iPadWidget IOSMac Catalyst

Dialogue asynchrone

Le principe du dialogue asynchrone est le suivant :
  • L'appel de la fonction affiche la boîte de dialogue correspondant à la fonction.
  • Le code qui suit l'appel continue à s'exécuter.
  • Quand l'utilisateur clique sur un des boutons de la boîte de dialogue, la procédure "callback" de la fonction est exécutée. Cette procédure permet de traiter si nécessaire la réponse de l'utilisateur.
WINDEV et WINDEV Mobile proposent des fonctions WLangage permettant de gérer un dialogue asynchrone. Ces fonctions sont identiques aux fonctions standards. Seul le mot "Asynchrone" a été ajouté pour les identifier rapidement :
AvertissementAsynchroneAffiche un message personnalisé dans une fenêtre d'avertissement système non bloquante.
ConfirmerAsynchroneAffiche un message non bloquant dans une boîte de dialogue standard proposant les réponses "Oui", "Non", "Annuler" et appelle une procédure WLangage avec la réponse de l'utilisateur.
DialogueAsynchroneAffiche une boîte de message non bloquante et appelle une procédure WLangage avec la valeur du bouton cliqué par l'utilisateur.
ErreurAsynchroneAffiche un message d'erreur personnalisé dans une fenêtre d'erreur système non bloquante.
ErreurAvecDélaiAsynchroneAffiche un message d'erreur personnalisé dans une fenêtre d'erreur système non bloquante pendant un délai défini.
InfoAsynchroneAffiche un message personnalisé et non bloquant dans une fenêtre d'information système.
InfoAvecDélaiAsynchroneAffiche un message personnalisé dans une fenêtre d'information système non bloquante pendant un délai défini.
OKAnnulerAsynchroneAffiche un message dans une boîte de dialogue standard non bloquante proposant les réponses "OK" et "Annuler" et appelle une procédure WLangage avec la réponse de l'utilisateur.
OuiNonAsynchroneAffiche un message dans une boîte de dialogue standard non bloquante proposant les réponses "Oui" et "Non" et appelle une procédure WLangage avec la réponse de l'utilisateur.
Ces fonctions sont obligatoires pour compiler une application Catalyst. Elles peuvent également être très utiles dans vos applications Windows. En effet, elles permettent un dialogue non bloquant avec l'utilisateur. L'application peut ainsi donner une information à l'utilisateur ou lui poser une question mais le code continue de s'exécuter, même si l'utilisateur n'est pas devant son écran ou s'il a besoin de temps pour répondre : l'exécution du programme n'est pas bloquée.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 30/08/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale