DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Fonctions standard / Fonctions de gestion de Windows / Fonctions DDE
  • Limites
  • Valeurs par défaut
  • Déclencher la même procédure pour plusieurs événements
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
DDEEvénement (Fonction)
En anglais : DDEEvent
Associe une procédure WLangage à un événement DDE : lorsque l'événement DDE se produit, la procédure WLangage associée est automatiquement lancée.
Remarque : Cette fonction doit être utilisée uniquement pour le "Nouveau dialogue DDE" de WINDEV ou de WEBDEV.
Exemple
WINDEVCode Utilisateur (MCU)
// Provoquer l'appel de la procédure "ReceptionDonnée" chaque fois que
// le programme reçoit une donnée envoyée par DDE par une autre application
DDEEvénement("ReceptionDonnée", DDEARecevoir)
PROCÉDURE ReceptionDonnée
SI (_DDE.Sujet = "MonSujet") ET (_DDE.Item = "MonItem") ALORS
_DDE.Cr = 1
Info("Donnée reçue : " + _DDE.Chaine)
SINON
_DDE.Cr = 0
FIN
Syntaxe
DDEEvénement(<Nom de la procédure> , <Événements DDE>)
<Nom de la procédure> : Chaîne de caractères
Nom de la procédure WLangage à lancer. Cette procédure peut être une procédure globale ou locale à la fenêtre en cours. Si ce paramètre correspond à une chaîne vide (""), l'association "Procédure - Événement DDE" est annulée.
<Événements DDE> : Constante (ou combinaison de constantes) de type entier
DDEAExécuterLe programme reçoit une commande à exécuter provenant d'une autre application.
<Procédure> peut connaître le sujet concerné par _DDE.Sujet et la donnée reçue par _DDE.Chaîne (_DDE.Item n'a pas de valeur significative).
  • Si la commande est exécutée, <Procédure> doit mettre à jour _DDE.Cr = 1
  • Si la commande n'est pas exécutée, <Procédure> doit mettre à jour _DDE.Cr = 0
DDEALierLe programme reçoit une demande de lien "tiède" ou "chaud" à une donnée. Cette demande provient d'une autre application.
<Procédure> peut connaître le sujet et l'item concernés par _DDE.Sujet et _DDE.Item (_DDE.Chaîne n'a pas de valeur significative).
  • Si le lien est créé, le programme devra appeler DDEModifie à chaque fois que la donnée correspondant au sujet et à l'item sera modifiée. <Procédure> doit mettre à jour _DDE.Cr = 1
  • Si le lien n'est pas créé, <Procédure> doit mettre à jour _DDE.Cr = 0
DDEAModifierLe programme reçoit le signal de la modification de la valeur d'une donnée liée. Ce signal provient d'une autre application.
Après l'événement DDEAModifier, il faut appeler DDELien ou DDELienTiède pour que <Procédure> soit appelée.
<Procédure> peut connaître le sujet et l'item concernés par _DDE.Sujet et _DDE.Item.
  • Si la modification est acceptée, <Procédure> doit mettre à jour _DDE.Cr = 1
  • Si la modification n'est pas acceptée, <Procédure> doit mettre à jour _DDE.Cr = 0
  • Si le lien est chaud, _DDE.Chaîne contient la nouvelle valeur de la donnée liée, sinon _DDE.Chaîne vaut "" (chaîne vide)
DDEARecevoirLe programme reçoit une donnée d'une autre application.
<Procédure> peut connaître le sujet et l'item concernés par _DDE.Sujet et _DDE.Item et la donnée reçue par _DDE.Chaîne.
  • Si la donnée est acceptée, <Procédure> doit mettre à jour _DDE.Cr = 1
  • Si la donnée n'est pas acceptée, <Procédure> doit mettre à jour _DDE.Cr = 0
DDEARépondreLe programme reçoit une demande de donnée d'une autre application.
<Procédure> peut connaître le sujet et l'item concernés par _DDE.Sujet et _DDE.Item (_DDE.Chaîne n'a pas de valeur significative).
  • Si la demande de donnée est acceptée, <Procédure> doit mettre à jour :
    • _DDE.Cr = 1
    • _DDE.Chaîne = <valeur à envoyer à l'application ayant fait la demande>
  • Si la demande de donnée n'est pas acceptée, <Procédure> doit mettre à jour _DDE.Cr = 0
Remarques

Limites

  • La fonction DDEEvénement ne peut pas être appelée dans le constructeur ou le destructeur d'une classe.
  • La fonction Multitache ne doit pas être exécutée dans une procédure appelée par la fonction DDEEvénement.
  • Le débogueur ne peut pas être appelé par les touches Ctrl + Pause dans une procédure appelée par la fonction DDEEvénement. Il faut alors ajouter le mot-clé Stop.

Valeurs par défaut

Par défaut, _DDE.Cr vaut 1 (OK) et _DDE.Chaîne vaut "" (chaîne vide).

Déclencher la même procédure pour plusieurs événements

La même procédure peut être déclenchée sur l'action de plusieurs événements DDE. Dans ce cas, la syntaxe est par exemple :
DDEEvénement("ReceptionDonnée", DDEARecevoir + DDEAModifier)
Pour ces deux événements, il faut identifier dans <Nom de la procédure> l'événement DDE qui a déclenché l'appel de la procédure. Pour cela, il suffit de consulter la variable _DDE.Evénement.
La variable _DDE.Evénement renvoie selon le cas :
  • DDEARépondre.
  • DDEARecevoir.
  • DDEAExécuter.
  • DDEALier.
  • DDEAModifier.
Composante : wd300std.dll
Voir Aussi
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

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