DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion de Windows / Fonctions Boîtes de dialogue
  • Caractéristiques de la boîte de dialogue
  • Saut de ligne dans la boîte de dialogue
  • Divers
  • Application en arrière-plan : Spécificité à partir de Android 10
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
Affiche 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.
Exemple de confirmation
Remarques :
  • Cette boîte de dialogue est non bloquante. Le code WLangage qui suit l'appel à la fonction ConfirmerAsynchrone continue de s'exécuter. Pour fermer la fenêtre, l'utilisateur doit valider un des boutons. Quand l'utilisateur clique sur un des boutons, le code d'une procédure WLangage est exécuté.
  • Dans le code WLangage suivant l'appel de la fonction, l'ouverture d'une autre fenêtre modale n'est pas possible avant la fermeture de la boîte de dialogue.
Exemple
TitreSuivant("Modification de fiche")
ConfirmerAsynchrone(Oui,"Des modifications ont été apportées à la fiche." + RC + ...
	"Souhaitez-vous les enregistrer avant de sortir de la fiche ?", ...
					TraiteConfirmation)

PROCÉDURE INTERNE TraiteConfirmation(nRéponse est un entier)
	SELON nRéponse
		CAS Oui : SauveFiche() // Traitement de sauvegarde
		CAS Non : Ferme()
		CAS Annuler : DonneFocusEtRetourUtilisateur()
	FIN
FIN
Syntaxe
ConfirmerAsynchrone([<Bouton sélectionné>, ] <Texte> , <Procédure WLangage>)
<Bouton sélectionné> : Constante optionnelle de type entier
Bouton sélectionné par défaut dans la boîte de dialogue :
Annuler2sélectionné par défaut.
Non0sélectionné par défaut.
Oui
(Valeur par défaut)
1sélectionné par défaut.
<Texte> : Chaîne de caractères
Texte à afficher.
<Procédure WLangage> : Nom de procédure ou procédure lambda
Nom de la procédure WLangage (appelée "callback") appelée lorsque l'utilisateur clique sur un des boutons de la fenêtre de confirmation. Cette procédure permet de connaître le bouton cliqué et si nécessaire d'effectuer un traitement spécifique.
Pour plus de détails sur cette procédure, consultez Paramètres de la procédure utilisée par la fonction ConfirmerAsynchrone.
Cette procédure WLangage peut correspondre à :
  • un nom de procédure globale ou locale,
  • un nom de procédure interne,
  • une procédure lambda.
Remarques

Caractéristiques de la boîte de dialogue

  • Le message est cadré à gauche.
  • Les libellés des boutons dépendent de la langue d'exécution de Windows (ou du poste Navigateur dans le cas d'un site WEBDEV).
  • Le nombre maximum de caractères affichés est limité à 4096. Si une chaîne plus grande est passée en paramètre, elle sera tronquée.
  • L'icône affichée (point d'exclamation dans une application WINDEV, point d'interrogation dans une application WEBDEV) ne peut pas être modifiée.
  • Le titre de la boîte de dialogue correspond au titre de la fenêtre (ou page) en cours.
    AndroidiPhone/iPad Pour respecter les spécifications du système, le titre de la boîte de dialogue est vide par défaut. Pour définir ce titre, utilisez la fonction TitreSuivant.
  • Pour modifier ou définir le titre de la boîte de dialogue, utilisez la fonction TitreSuivant.

Saut de ligne dans la boîte de dialogue

La chaîne prédéfinie RC (Retour Chariot) peut être utilisée pour forcer le passage à la ligne suivante. Par exemple :
ConfirmerAsynchrone("La fiche XXX a été modifiée." + RC + ...
	"Voulez-vous la sauver avant de quitter ?", Procédure_ConfirmerAsynchrone)
Il est également possible d'utiliser la syntaxe des chaînes multilignes. Par exemple :
ConfirmerAsynchrone(
[
La fiche XXX a été modifiée.

Voulez-vous la sauver avant de quitter ?
], Procédure_ConfirmerAsynchrone)

Divers

  • Les timers (fonction TimerSys) ne sont pas stoppés lors de l'appel de cette fonction.
  • Le libellé des boutons s'affiche dans la langue utilisée par Windows sur le poste en cours.
  • iPhone/iPad Cette fonction ne doit pas être utilisée :
    • dans l'événement "Modification de la taille" des fenêtres. Dans le cas contraire, l'application sera bloquée.
    • dans l'événement "Changement d'orientation" des fenêtres.
    • dans l'événement "Mise au premier-plan" associé au projet.
      Remarque : La fonction peut par contre être utilisée dans l'événement "Mise au premier plan" d'une fenêtre.
    • dans un thread.
Android

Application en arrière-plan : Spécificité à partir de Android 10

A partir de Android 10, il n'est plus possible d'ouvrir une fenêtre lorsque l'application est en arrière-plan.
La fonction ConfirmerAsynchrone peut provoquer l'ouverture d'une fenêtre. Si cette fonction est utilisée alors que l'application est en arrière-plan, une erreur fatale sera générée.
Conseils :
  • Il est possible de savoir si l'application est en arrière-plan grâce à la fonction EnModeArrièrePlan.
  • Si une application a besoin d'interagir avec l'utilisateur alors qu'elle se trouve en arrière-plan, la solution consiste à afficher une notification (via le type Notification). Lors du clic sur la notification, l'application sera remise au premier plan si la propriété ActiveApplication est à Vrai. Il est également possible d'ouvrir une fenêtre depuis la procédure passée à la propriété ActionClic.
Composante : wd300obj.dll
Version minimum requise
  • Version 25
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 21/06/2023

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