PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Nouveauté WINDEV, WINDEV Mobile 25 !
  • 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é Android 10
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
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.
  • WINDEV WINDEV permet d'appliquer le gabarit de votre projet à cette boîte de dialogue. Pour plus de détails, consultez Personnaliser les boîtes de dialogue.
Exemple
TitreSuivant("Modification de fiche")
ConfirmerAsynchrone("Des modifications ont été apportées à la fiche.", ...
"Souhaitez-vous les enregistrer avant de sortir de la fiche ?", ...
TraiteConfirmation(nRéponse est un entier))
 
PROCÉDURE INTERNE TraiteConfirmation(nRéponse est un entier)
SELON nRéponse
CAS Oui : SauveFiche() // Traitement de sauvegarde
CAS Non : Ferme()
CAS Annuler : RepriseSaisie()
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 :
Non0sélectionné par défaut.
Oui
(Valeur par défaut)
1sélectionné par défaut.
Annuler2sélectionné par défaut.
<Texte> : Chaîne de caractères (avec guillemets)
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.
WINDEV Pour personnaliser cette boîte de dialogue (ainsi que toutes les boîtes de dialogue système de votre application), cochez l'option "Personnaliser les fenêtres système (Info, OuiNon, Confirmer, Dialogue)" dans l'onglet "Style" de la description du projet. Pour plus de détails, consultez Personnaliser les boîtes de dialogue.

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.
  • WINDEV Les événements Windows ne sont pas stoppés lors de l'appel à cette fonction.
  • WINDEV La fonction DélaiAvantFermeture limite le temps d'affichage du message. La boîte de dialogue est automatiquement fermée. Pour les boîtes de question ou de confirmation, la réponse attendue correspond au bouton par défaut.
  • 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.
Versions 25 et supérieures
Android

Application en arrière-plan : Spécificité 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.
Nouveauté 25
Android

Application en arrière-plan : Spécificité 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.
Android

Application en arrière-plan : Spécificité 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 : wd250obj.dll
Version minimum requise
  • Version 25
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire