PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Utilisation de la syntaxe avec assistant
  • Caractéristiques de la boîte de dialogue
  • Divers
  • Pilotage
  • 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 une boîte de message et renvoie la valeur du bouton cliqué par l'utilisateur.
Remarques :
  • Cette fenêtre d'avertissement est bloquante. Pour continuer l'exécution de l'application, l'utilisateur doit valider un des boutons.
    Versions 25 et supérieures
    WINDEVAndroidiPhone/iPad Pour ne pas bloquer l'application, utilisez la fonction DialogueAsynchrone.
    Nouveauté 25
    WINDEVAndroidiPhone/iPad Pour ne pas bloquer l'application, utilisez la fonction DialogueAsynchrone.
    WINDEVAndroidiPhone/iPad Pour ne pas bloquer l'application, utilisez la fonction DialogueAsynchrone.
  • 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.
Versions 16 et supérieures
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
Nouveauté 16
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
WINDEVLinux Cette fonction est désormais disponible pour les applications WINDEV sous Linux.
Versions 19 et supérieures
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Nouveauté 19
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Versions 21 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Versions 24 et supérieures
WEBDEV - Code ServeurLinux Cette fonction est désormais disponible pour les sites WEBDEV sous Linux.
WEBDEV - Code ServeurWindows Cette fonction est désormais disponible pour les sites WEBDEV sous Windows.
Nouveauté 24
WEBDEV - Code ServeurLinux Cette fonction est désormais disponible pour les sites WEBDEV sous Linux.
WEBDEV - Code ServeurWindows Cette fonction est désormais disponible pour les sites WEBDEV sous Windows.
WEBDEV - Code ServeurLinux Cette fonction est désormais disponible pour les sites WEBDEV sous Linux.
WEBDEV - Code ServeurWindows Cette fonction est désormais disponible pour les sites WEBDEV sous Windows.
Exemple
// Attention : Cet exemple ne doit pas être copié directement.
// Le code suivant est généré par l'assistant.
SELON Dialogue("Voulez-vous enregistrer les modifications dans le fichier %1?", MaSource)
// Oui
CAS 1 :
Procédure_Sauve()
FIN
Versions 20 et supérieures
// Attention : Cet exemple ne doit pas être copié directement.
// Le code suivant est généré par l'assistant.
SI Dialogue(ChaîneConstruit("Voulez-vous enregistrer les modifications dans le fichier %1 ?", ...
MaSource), ["Oui - Enregistrer","Non"], 1, 2, dlgIcôneQuestion) = 1 ALORS
Procédure_Sauve()
FIN
Nouveauté 20
// Attention : Cet exemple ne doit pas être copié directement.
// Le code suivant est généré par l'assistant.
SI Dialogue(ChaîneConstruit("Voulez-vous enregistrer les modifications dans le fichier %1 ?", ...
MaSource), ["Oui - Enregistrer","Non"], 1, 2, dlgIcôneQuestion) = 1 ALORS
Procédure_Sauve()
FIN
// Attention : Cet exemple ne doit pas être copié directement.
// Le code suivant est généré par l'assistant.
SI Dialogue(ChaîneConstruit("Voulez-vous enregistrer les modifications dans le fichier %1 ?", ...
MaSource), ["Oui - Enregistrer","Non"], 1, 2, dlgIcôneQuestion) = 1 ALORS
Procédure_Sauve()
FIN
Syntaxe

Syntaxe avec utilisation de l'assistant Masquer les détails

<Résultat> = Dialogue(<Identifiant du message> [, <Paramètre 1> [... [, <Paramètre N>]]])
<Résultat> : Entier
Identifie la réponse sélectionnée par l'utilisateur. Cette réponse dépend du message choisi. Les différentes valeurs correspondant aux différentes réponses sont automatiquement intégrées en commentaires dans l'éditeur de code lors de la sélection du message.
<Identifiant du message> : Entier
Identifie la question posée à l'utilisateur ainsi que les différentes réponses possibles.
<Paramètre 1> : Chaîne de caractères optionnelle
Si le message choisi contient des éléments paramétrables (identifiés par %1, %2, ...), ce paramètre permet de donner la valeur voulue à l'élément paramétrable 1. Ainsi la valeur de <Paramètre 1> remplacera %1.
<Paramètre N> : Chaîne de caractères optionnelle
Si le message choisi contient des éléments paramétrables (identifiés par %1, %2, ...), ce paramètre permet de donner la Nième valeur voulue à l'élément paramétrable N. Ainsi la valeur de <Paramètre N> remplacera %N.
Versions 20 et supérieures

Syntaxe directe Masquer les détails

<Résultat> = Dialogue(<Question> , <Libellés des boutons> [, <Bouton par défaut> [, <Bouton d'annulation> [, <Icône>]]])
<Résultat> : Entier
Identifie la réponse sélectionnée par l'utilisateur. Cette réponse dépend du message choisi.
<Question> : Chaîne de caractères (avec guillemets)
Question posée à l'utilisateur.
<Libellés des boutons> : Tableau
Nom de la variable de type Tableau contenant les libellés des boutons.
<Bouton par défaut> : Entier
Indice du bouton sélectionné par défaut. Par défaut, ce paramètre vaut 1.
<Bouton d'annulation> : Entier
Indice du bouton d'annulation. Par défaut, ce paramètre correspond à l'indice du dernier bouton.
<Icône> : Chaîne de caractères (avec guillemets) ou constante de type Entier
Icône affichée. Ce paramètre peut correspondre :
  • au chemin du fichier correspondant à l'icône affichée.
  • à une des constantes suivantes :
    dlgIcôneErreurIcône représentant une erreur.
    dlgIcôneInfo
    (Valeur par défaut)
    Icône représentant une information.
    dlgIcôneQuestionIcône représentant une question.
Nouveauté 20

Syntaxe directe Masquer les détails

<Résultat> = Dialogue(<Question> , <Libellés des boutons> [, <Bouton par défaut> [, <Bouton d'annulation> [, <Icône>]]])
<Résultat> : Entier
Identifie la réponse sélectionnée par l'utilisateur. Cette réponse dépend du message choisi.
<Question> : Chaîne de caractères (avec guillemets)
Question posée à l'utilisateur.
<Libellés des boutons> : Tableau
Nom de la variable de type Tableau contenant les libellés des boutons.
<Bouton par défaut> : Entier
Indice du bouton sélectionné par défaut. Par défaut, ce paramètre vaut 1.
<Bouton d'annulation> : Entier
Indice du bouton d'annulation. Par défaut, ce paramètre correspond à l'indice du dernier bouton.
<Icône> : Chaîne de caractères (avec guillemets) ou constante de type Entier
Icône affichée. Ce paramètre peut correspondre :
  • au chemin du fichier correspondant à l'icône affichée.
  • à une des constantes suivantes :
    dlgIcôneErreurIcône représentant une erreur.
    dlgIcôneInfo
    (Valeur par défaut)
    Icône représentant une information.
    dlgIcôneQuestionIcône représentant une question.

Syntaxe directe Masquer les détails

<Résultat> = Dialogue(<Question> , <Libellés des boutons> [, <Bouton par défaut> [, <Bouton d'annulation> [, <Icône>]]])
<Résultat> : Entier
Identifie la réponse sélectionnée par l'utilisateur. Cette réponse dépend du message choisi.
<Question> : Chaîne de caractères (avec guillemets)
Question posée à l'utilisateur.
<Libellés des boutons> : Tableau
Nom de la variable de type Tableau contenant les libellés des boutons.
<Bouton par défaut> : Entier
Indice du bouton sélectionné par défaut. Par défaut, ce paramètre vaut 1.
<Bouton d'annulation> : Entier
Indice du bouton d'annulation. Par défaut, ce paramètre correspond à l'indice du dernier bouton.
<Icône> : Chaîne de caractères (avec guillemets) ou constante de type Entier
Icône affichée. Ce paramètre peut correspondre :
  • au chemin du fichier correspondant à l'icône affichée.
  • à une des constantes suivantes :
    dlgIcôneErreurIcône représentant une erreur.
    dlgIcôneInfo
    (Valeur par défaut)
    Icône représentant une information.
    dlgIcôneQuestionIcône représentant une question.
Remarques

Utilisation de la syntaxe avec assistant

Pour utiliser cette syntaxe, il est nécessaire d'utiliser l'assistant proposé lors de l'écriture du nom de la fonction sous l'éditeur de code (option "<Assistant>" proposée par la saisie assistée). Cet assistant permet de saisir les différents paramètres de la boîte de dialogue qui sera utilisée. Cette fonction ne peut pas être utilisée si la fenêtre de dialogue n'est pas construite avec l'assistant.
Pour lancer l'assistant :
  1. Sous l'éditeur de code, saisissez "Dialogue(".
  2. Cliquez sur l'option "Assistant". L'assistant se lance. Passez à l'étape suivante.
  3. Choisissez une question existante ou créez une nouvelle question (option <Cliquez ici pour créer une nouvelle question>). Passez à l'étape suivante.
  4. Si vous avez choisi de créer une question, un écran apparaît. Cet écran permet de saisir les différents paramètres de la boîte de dialogue utilisée pour poser la question. Vous pouvez indiquer :
    • Le texte de la question,
    • L'image de la boîte de dialogue,
    • Les différents boutons permettant à l'utilisateur de répondre.
  5. Validez l'écran de définition de la question. Le code correspondant est automatiquement inséré dans l'éditeur de code. Appuyez à nouveau sur la touche ENTREE du clavier. Le code complet est ajouté sous l'éditeur de code. Il est possible de modifier les caractéristiques de la boîte de dialogue grâce à l'icône située à côté du texte de la question.

Caractéristiques de la boîte de dialogue

  • 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.
  • WINDEVWINDEV Mobile Le gabarit du projet en cours est automatiquement appliqué à la boîte de dialogue.
    Java Pour que le gabarit du projet soit appliqué à la boîte de dialogue, il faut :
    • appliquer le gabarit aux boîtes de dialogue (option "Personnaliser les fenêtres système (Info, OuiNon, Confirmer, Dialogue)" dans l'onglet "Style" de la fenêtre de description du projet).
    • que la fenêtre "WinDevMessageBox" soit présente dans le projet.
    Universal Windows 10 App La boîte de dialogue affichée utilise le look système (le gabarit du projet n'est pas appliqué).
  • Android Les caractéristiques de la boîte de dialogue sont les suivantes :
    • La boîte de dialogue affichée est au look système.
    • La boîte de dialogue ne doit pas contenir plus de 3 boutons. Les boutons supplémentaires ne seront pas affichés.
    • La position des boutons est dépendante de la version de Android. A partir de la version 4.1 de Android, le bouton de validation est à droite. Pour modifier l'ordre des boutons, affichez l'assistant d'édition d'une question et décochez l'option "Utiliser l'ordre défini par le système pour les boutons validation/annulation".
  • iPhone/iPad La boîte de dialogue affichée est une boîte de dialogue native iPhone/iPad.
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.

Divers

  • WINDEVWindows MobileJava 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.
  • WINDEVAndroidJava Pour permettre à l'utilisateur de saisir une valeur dans une boîte de dialogue, utilisez la fonction Saisie.
  • 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 24 et supérieures
    WEBDEV - Code Serveur Cas particuliers :
    • Si votre projet utilise les sessions prélancées, cette fonction ne doit pas être utilisée dans l'événement "Initialisation" du projet. Cette fonction doit être utilisée dans l'événement "Initialisation du projet après connexion au site".
    • Cette fonction ne doit pas être utilisée dans une tâche planifiée WEBDEV.
    Nouveauté 24
    WEBDEV - Code Serveur Cas particuliers :
    • Si votre projet utilise les sessions prélancées, cette fonction ne doit pas être utilisée dans l'événement "Initialisation" du projet. Cette fonction doit être utilisée dans l'événement "Initialisation du projet après connexion au site".
    • Cette fonction ne doit pas être utilisée dans une tâche planifiée WEBDEV.
    WEBDEV - Code Serveur Cas particuliers :
    • Si votre projet utilise les sessions prélancées, cette fonction ne doit pas être utilisée dans l'événement "Initialisation" du projet. Cette fonction doit être utilisée dans l'événement "Initialisation du projet après connexion au site".
    • Cette fonction ne doit pas être utilisée dans une tâche planifiée WEBDEV.
WINDEVWindows Mobile

Pilotage

Il est possible de piloter une boîte de dialogue à l'aide de la fonction PiloteDialogue.
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 Dialogue 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 Dialogue 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 Dialogue 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.
Classification Métier / UI : Code UI
Composante : wd250obj.dll
Version minimum requise
  • Version 10
Documentation également disponible pour…
Commentaires
Fermeture par la case de fermeture de la fenêtre
Cliquer sur la case de fermeture de la fenêtre correspond au bouton "Annulation". Attention donc de bien respecter le choix de ce bouton. en particulier, lorsque l'on désire que le choix par défaut soit "Annuler" pour ne pas risquer un fausse manœuvre de l'utilisateur, il n'est pas possible de mettre le bouton "Annuler" en validation par défaut.
Arbos
20 déc. 2019