IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

C# WinForm - Problème avec les tooltips /info-bulles


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Par défaut C# WinForm - Problème avec les tooltips /info-bulles
    Bonjour,
    je suis actuellement en stage de développement en fin de première année d'informatique et je me heurtes à un problème que je n'arrive pas à résoudre.
    J'ai ce code sur un de mes formulaires :

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    if (this.actuel == mode_Ssm.Ssm)
                {
                    Messages.SetToolTip(this.edSsm, ps.GetParameter(eParameter.SsBlock).Help);
                }
                else if(this.actuel == mode_Ssm.SsTot)
                {
                    Messages.SetToolTip(this.edSsm, "Total Specific Storativity");
                }
                else if (this.actuel == mode_Ssm.omega)
                {
                    Messages.SetToolTip(this.edSsm, ps.GetParameter(eParameter.Ss).Help);
                }

    le mode stocké dans "actuel" change lorsque je clique sur un bouton et l'info- bulles de l'edit est censé changé aussi et je suis sur que ceci marche de même pour la partie getparameter.Help... le fait est que celui-ci ne change absolument pas et garde le premier cas chargé au load du formulaire. Pourtant j'appelle cette fonction au chargement du formulaire mais aussi a la fin de la fonction "bouton_click"
    Voici le code dans Messages.cs:

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public static void SetToolTip(Control control, string Help)
    		{
    			ToolTip tt = new ToolTip();
    			tt.AutoPopDelay = 5000; //ToolTipAutoPopDelay=5000; 
    			tt.InitialDelay = 1000; //ToolTipInitialDelay=1000;
    			tt.ReshowDelay = 500; //ToolTipReshowDelay=500;
    			tt.ShowAlways = true; //ToolTipShowAlways=true;
    			tt.SetToolTip(control, Help);
    		}

    J'ai aussi tenté de retourner un tooltip et de le stocker dans un tooltip de l'edit mais cela ne donne pas de résultats...

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    if (this.actuel == mode_Ssm.Ssm)
                {
                    ttssm=Messages.SetToolTip2(this.edSsm, ps.GetParameter(eParameter.SsBlock).Help);
                }
                else if(this.actuel == mode_Ssm.SsTot)
                {
                    ttssm=Messages.SetToolTip2(this.edSsm, "Total Specific Storativity");
                }
                else if (this.actuel == mode_Ssm.omega)
                {
                    ttssm=Messages.SetToolTip2(this.edSsm, ps.GetParameter(eParameter.Ss).Help);
                }

    Pareil en essayant un dispose avant de mettre le nouveau tootip dans la variable:

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    if (this.actuel == mode_Ssm.Ssm)
                {
                    ttssm.Dispose();
                    ttssm=Messages.SetToolTip2(this.edSsm, ps.GetParameter(eParameter.SsBlock).Help);
                }
                else if(this.actuel == mode_Ssm.SsTot)
                {
                    ttssm.Dispose();
                    ttssm =Messages.SetToolTip2(this.edSsm, "Total Specific Storativity");
                }
                else if (this.actuel == mode_Ssm.omega)
                {
                    ttssm.Dispose();
                    ttssm =Messages.SetToolTip2(this.edSsm, ps.GetParameter(eParameter.Ss).Help);
                }

    En bref je suis face à une impasse et je ne trouve pas de solutions...
    J'ai essayé d'être le plus précis possible mais si il y a une quelconque question qui pourrait m'aider à résoudre ce problème n'hésitez pas à me demander !

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par défaut
    Pourquoi crées-tu un nouveau contrôle Tooltip à chaque fois?
    Normalement tu crées UN contrôle tooltip à la création de ton formulaire (et si tu as une version de Visual qui contient les designers, tu peux les utiliser pour mettre un contrôle Tooltip directement sur le Form).
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Par défaut
    A Vrai dire J'ai commencé le stage et ceci était déjà présent...
    Mais on associe pas un ToolTip à chaque control ? J'ai du mal à visualiser comment mettre un tooltip seulement pour tout un form ou alors j'ai du mal comprendre ^^
    Je vais me renseigner sur la façon de faire avec les designers

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par défaut
    Je ne sais plus si c'est le cas en Win32 de base, mais en WinForm, on a un contrôle Tooltip et on lui dit ce qu'il doit afficher pour chaque contrôle.
    En gros, un truc du genre:
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    ToolTip toolTip = new ToolTip();
     
    Button button1 = new Button();
    button1.X=10;
    button1.Y=10;
    button1.Text = "Un";
    toolTip.SetToolTip(button1, "Ceci est le premier bouton");
     
    Button button2 = new Button();
    button2.X=10;
    button2.Y=40;
    button2.Text = "Deux";
    toolTip.SetToolTip(button2, "Ceci est le deuxième bouton");

    Edit: Et c'est pareil en Win32 de base: On crée le tooltip, puis on lui indique pour chaque contrôle ce qu'il doit afficher.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 8
    Par défaut
    merci médinoc effectivement après avoir plus recherché avec cette histoire de 1 tooltip par form j'ai fais des changements et maintenant tout est nickel merci beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 22/09/2014, 13h55
  2. ListBox avec ToolTip (info bulle)
    Par stephane.julien dans le forum C#
    Réponses: 4
    Dernier message: 16/10/2007, 10h00
  3. Problème avec les apostrophes
    Par misterbillyboy dans le forum Requêtes
    Réponses: 2
    Dernier message: 15/07/2003, 16h39
  4. Problème avec les fichiers .JPG
    Par cprogil dans le forum Langage
    Réponses: 5
    Dernier message: 10/06/2003, 15h44
  5. []Problème avec les formulaires Outlook
    Par Invité dans le forum Outlook
    Réponses: 6
    Dernier message: 05/12/2002, 09h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo