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

MFC Discussion :

[MFC] Changer le texte dans la barre de statut


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut [MFC] Changer le texte dans la barre de statut
    Bonjour à tous !

    Je souhaite gérer l'affichage de la barre de statut, afin d'y afficher des informations concernant un calcul en cours.
    Pour cela, j'ai ajouté l'indicateur "ID_INDICATOR_MESSUNG".
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    static UINT BASED_CODE indicators[] = 
    {
      ID_SEPARATOR,
     /* Autres indicateurs */
      ID_INDICATOR_MESSUNG,
    };
    Ensuite dans la table des String, j'ai rentré le texte initial à afficher.
    ID_INDICATOR_MESSUNG 59143 Ceci est le texte qui s'affiche dans la barre de statut
    Maintenant je cherche à modifier ce texte.

    Je voulais faire un OnUpdate (UPDATE_COMMAND_UI) pour la resource string indicator, pour pouvoir ensuite appliquer CCmdUI::SetText pour changer le texte de la barre de statut. Seulement, ID_INDICATOR_MESSUNG n'apparaît pas dans le class Wizard.
    Comment puis-je faire pour le faire apparaître ? Quelle est la méthode à suivre ?

    Merci bcp pour votre aide.

  2. #2
    Membre régulier
    Profil pro
    Développeur informatique
    Inscrit en
    Août 2002
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2002
    Messages : 106
    Points : 113
    Points
    113
    Par défaut
    salut,
    je dirais que ça me parait normal que tu n'es pas cet ID car quand l'utilisateur ne modifie pas directement le texte de la barre de statue, mais il fait une modification autre (je sais pas ce que c'est dans le cas de ton programme) qui elle va entrainer une modification de la barre de statut. C'est cet autre évènement que tu dois intercepter.
    Par exemple avec Visual C++, si tu fais Ctrl+s, tu vas avoir le texte NomDeMonFichier saved dans la barre de statue, c'est l'évènement ONKEYDOWN qui est intercepté et qui modifie ensuite la barre de statut.

    Bonne chance

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    336
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 336
    Points : 341
    Points
    341
    Par défaut
    Voilà je viens de finir par trouver, voici le code clé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     CStatusBar* pSBar  = (CStatusBar*) &(pFrame->m_wndStatusBar);
     
      pSBar->SetPaneText( 5, "HELLO !!!", TRUE );
    5 est le numéro du tableau des indicateurs, le deuxième paramètre le texte et le dernier pour invalider la Pane.

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

Discussions similaires

  1. [XL-2010] Insérer un texte dans la barre de statut par macro
    Par statista dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/05/2011, 10h23
  2. [MFC] afficher une ProgressBar dans une barre d'etat
    Par guillaume21 dans le forum MFC
    Réponses: 5
    Dernier message: 30/03/2007, 11h16
  3. texte dans la barre de statut
    Par l@rry dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/12/2004, 17h23
  4. [MFC]Ecrire du texte dans un rectangle
    Par zaz16 dans le forum MFC
    Réponses: 8
    Dernier message: 29/07/2003, 10h31
  5. Réponses: 2
    Dernier message: 10/06/2002, 11h03

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