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 :

Barre d'état? Ou déclarer?


Sujet :

MFC

  1. #1
    Membre averti
    Homme Profil pro
    Informatique industrielle
    Inscrit en
    Novembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Informatique industrielle

    Informations forums :
    Inscription : Novembre 2007
    Messages : 41
    Par défaut Barre d'état? Ou déclarer?
    Salut tout le monde

    J'ai une petite question à vous poser. Ma question vous paraîtra peut être un peu stupide mais il y a quelque chose que je ne comprend pas dans la faq de farscape.

    Si vous voulais j'essaille de mettre une progress bar dans la barre d'état et j'ai une erreur dans mon code. Pour vous éviter d'aller sur la faq je vous met le code de farscape.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    #pragma once
    // CStatusBarEx
    class CStatusBarEx : public CStatusBar
    {
        DECLARE_DYNAMIC(CStatusBarEx)
     
    public:
        CStatusBarEx();
        virtual ~CStatusBarEx();
     
    protected:
        CProgressCtrl             m_Progress;
     
        DECLARE_MESSAGE_MAP()
    public:
        afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
        afx_msg void OnSize(UINT nType, int cx, int cy);
    };
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    // StatusBarEx.cpp : fichier d'implémentation
    //
     
    #include "stdafx.h"
    #include "StatusBarEx.h"
     
    // CStatusBarEx
     
    IMPLEMENT_DYNAMIC(CStatusBarEx, CStatusBar)
    CStatusBarEx::CStatusBarEx()
    {
    }
     
    CStatusBarEx::~CStatusBarEx()
    {
    }
     
     
    BEGIN_MESSAGE_MAP(CStatusBarEx, CStatusBar)
        ON_WM_CREATE()
        ON_WM_SIZE()
    END_MESSAGE_MAP()
     
    // Gestionnaires de messages CStatusBarEx
    int CStatusBarEx::OnCreate(LPCREATESTRUCT lpCreateStruct)
    {
        if (CStatusBar::OnCreate(lpCreateStruct) == -1)
            return -1;
     
        // Initialise controls
        CRect rect( 0, 0, 100, 16);
        m_Progress.Create( WS_VISIBLE | WS_CHILD, rect, this, IDC_PROGRESS );
        m_Progress.SetRange( static_cast<short>(0), static_cast<short>(100) );
     
        return 0;
    }
     
    void CStatusBarEx::OnSize(UINT nType, int cx, int cy)
    {
        CStatusBar::OnSize(nType, cx, cy);
     
        // Initially create progress control in horizontal position
        CWnd* pWnd = (CWnd*)this;
        CRect rect;
        pWnd->GetWindowRect( &rect );
        ScreenToClient( &rect );
     
        if( m_Progress.GetSafeHwnd())
        {
            m_Progress.SetWindowPos( &CWnd::wndTop, 0, 0, 100, 16, SWP_NOMOVE | SWP_NOZORDER);
            m_Progress.SetPos( 16);
        }
     
    }
    Lorsque je compile il me dit que IDC_PROGRESS n'est pas déclaré, ce qui est normale car je ne l'ai pas déclaré. Donc j'en viens à ma question est ce que vous savez ou déclarer IDC_PROGRESS?

    Merci d'avance pour vos réponses

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    IDC_PROGRESS c'est l'identifiant de ton progress contrôle tu mets la valeur que tu veux (100,1000 etc..).
    ou alors tu rajoutes un #define IDC_PROGRESS 1000 dans ton source.. ou éventuellement dans resource.h.

  3. #3
    Membre averti
    Homme Profil pro
    Informatique industrielle
    Inscrit en
    Novembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Informatique industrielle

    Informations forums :
    Inscription : Novembre 2007
    Messages : 41
    Par défaut
    Ok merci de ton aide farscape.

    En fait il a fallut que je mette
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define IDC_PROGRESS    1000
    dans mon fichier StatusBarEx.cpp

    Si je le met dans le fichier ressource.h ça marche pas.

  4. #4
    Membre chevronné
    Avatar de PetitPapaNoël
    Développeur informatique
    Inscrit en
    Septembre 2006
    Messages
    559
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 559
    Par défaut
    Citation Envoyé par Iznogood12 Voir le message
    Si je le met dans le fichier ressource.h ça marche pas.
    Bonjour,

    C'est peut-être parce qu'il manque un dans ton fichier...

  5. #5
    Membre averti
    Homme Profil pro
    Informatique industrielle
    Inscrit en
    Novembre 2007
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Informatique industrielle

    Informations forums :
    Inscription : Novembre 2007
    Messages : 41
    Par défaut
    Je suis trop nul je n'y ai même pas pensé.
    C'est sur que quand on inclu le fichier ça marche mieux.

    Merci

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

Discussions similaires

  1. la barre d'état...
    Par zarbiman dans le forum IHM
    Réponses: 3
    Dernier message: 14/06/2005, 08h56
  2. Réponses: 20
    Dernier message: 01/06/2005, 09h37
  3. Affichage d'un texte dans la barre d'état!
    Par chuart dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 12/04/2005, 12h47
  4. Pb d'affichage dans barre d'état
    Par linou dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/04/2005, 11h21
  5. Réponses: 8
    Dernier message: 20/12/2004, 17h42

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