Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com

Accueil

 
4D v20.6
OBJET FIXER MESSAGE AIDE

OBJET FIXER MESSAGE AIDE 


 

OBJET FIXER MESSAGE AIDE ( {* ;} objet ; messageAide ) 
Paramètre Type   Description
Opérateur in Si spécifié, objet est un nom d'objet (chaîne)
Si omis, objet est une variable ou un champ
objet  Objet de formulaire in Nom d'objet (si * est spécifié) ou Variable (si * est omis)
messageAide  Texte in Contenu du message d’aide

La commande OBJET FIXER MESSAGE AIDE permet de définir ou de modifier dynamiquement le message d’aide associé à l’objet ou aux objets désigné(s) par les paramètres objet et * pour le process courant.

Si vous passez le paramètre optionnel *, vous indiquez que le paramètre objet est un nom d’objet de formulaire (une chaîne). Si vous ne passez pas ce paramètre, vous indiquez que le paramètre objet est une variable. Dans ce cas, vous ne passez pas une chaîne mais une référence de variable.

Passez dans le paramètre messageAide une chaîne de caractères contenant le message à afficher. Si vous passez une chaîne vide "", l'infobulle est supprimée.

Lorsque le formulaire est exécuté, les messages d'aide apparaissent sous forme d'infobulle à chaque fois que le curseur de la souris survole le champ ou l'objet. Le délai d'affichage et la durée maximum d'affichage des messages d'aide peuvent être contrôlés en utilisant les sélecteurs Messages aide délai et Messages aide durée de la commande FIXER PARAMETRE BASE.

Note : Vous pouvez utiliser cette commande avec une list box afin d'associer des infobulles aux lignes et cellules de la list box. Par exemple, un objet list box peut comporter une infobulle différente par ligne. Ce cas nécessite de déterminer au préalable la position du curseur à l'aide de la commande LISTBOX LIRE POSITION CELLULE. Ce principe est présenté dans un exemple ci-dessous.

Lorsqu'un message d'aide est déjà affiché, l'utilisation de la commande OBJET FIXER MESSAGE AIDE le ferme, ouvre un nouveau message d'aide à l'endroit où se trouve la souris et redémarre le compteur Messages aide durée, permettant une gestion dynamique des messages d'aide.

Notes :

Dans ce formulaire, un message d'aide est affiché et change dynamiquement lorsque la souris survole des zones différentes du bouton-image :

  //Méthode objet du bouton-image nommé "myFlag"
 
 C_REEL($x;$y;oldX;oldY)
 C_REEL($left;$right;$top;$bottom)
 C_ENTIER LONG($b)
 C_TEXTE($tip)
 C_TEXTE(oldTip)
 C_BOOLEEN($doRefresh)
 
 Au cas ou
    :(Evenement formulaire=Sur chargement)
       oldTip:=""
       FIXER PARAMETRE BASE(Message aide activation;1) //Pour être sûr que les messages d'aide sont activés
       FIXER PARAMETRE BASE(Message aide délai;0) // Le message est affiché dès que la souris s'arrête
       FIXER PARAMETRE BASE(Message aide durée;60*10) // Affichage de 10 secondes
    :(Evenement formulaire=Sur survol)
       POSITION SOURIS($x;$y;$b)
       OBJET LIRE COORDONNEES(*;"myFlag";$left;$top;$right;$bottom)
       $x:=$x-$left
       $y:=$y-$top
       Au cas ou //chaque zone du drapeau fait 76 pixels
          :($x<76)
             $tip:="Couleur verte"
          :($x<152)
             $tip:="Couleur blanche"
          sinon
             $tip:="Couleur rouge"
       Fin de cas
 
       $doRefresh:=($tip#oldtip//Vrai si le message d'aide est différent
       Si(Non($doRefresh)) //contenus identiques
          $doRefresh:=((Abs($x-oldX)>30)|(Abs($y-oldY)>30)) //Vrai si le curseur a bougé
       Fin de si
 
       Si($doRefresh//Affiche un autre message
          OBJET FIXER MESSAGE AIDE(*;"myFlag";$tip)
          oldX:=$x
          oldY:=$y
          oldTip:=$tip
       Fin de si
 
 Fin de cas

Vous avez défini une list box "liste de commandes" et vous souhaitez proposer des infobulles affichant la description de chaque élément de la liste. La description se trouve dans la table [Documentation]. 

 C_REEL($mouseX;$mouseY;$mouseZ)
 C_ENTIER LONG($col;$row)
 
 Au cas ou
 
    :(Evenement formulaire=Sur début survol)
       FIXER PARAMETRE BASE(Messages aide délai;1) // l'infobulle doit s'afficher rapidement
 
    :(Evenement formulaire=Sur survol)
  //#1 : trouver quelle ligne est survolée
       POSITION SOURIS($mouseX;$mouseY;$mouseZ)
       LISTBOX LIRE POSITION CELLULE(*;"Commands List";$mouseX;$mouseY;$col;$row)
 
  //#2 : définir l'infobulle à afficher
       Si($row#0)
          ALLER DANS SELECTION([Documentation];$row)
          OBJET FIXER MESSAGE AIDE(*;"Commands List";[Documentation]Description) // la description complète sera utilisée comme message d'aide lorsque (si) la souris est immobile
       Fin de si
 
    :(Evenement formulaire=Sur fin survol)
       FIXER PARAMETRE BASE(Messages aide délai;3) //Retour délai normal
 
 Fin de cas
  

Résultat :



Voir aussi  

FIXER PARAMETRE BASE
OBJET Lire message aide

 
PROPRIÉTÉS 

Produit : 4D
Thème : Objets (Formulaires)
Numéro : 1181
Nom intl. : OBJECT SET HELP TIP

 
PAGE CONTENTS 
 
HISTORIQUE 

Créé : 4D v13
Modifié : 4D v16 R4
Modifié : 4D v16 R5

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v20)
4D - Langage ( 4D v20.1)
4D - Langage ( 4D v20.2)
4D - Langage ( 4D v20.3)
4D - Langage ( 4D v20.4)
4D - Langage ( 4D v20.5)
4D - Langage ( 4D v20.6)