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][Debutant] UpdateData, timer et CEdit


Sujet :

MFC

  1. #1
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Points : 1 565
    Points
    1 565
    Par défaut [MFC][Debutant] UpdateData, timer et CEdit
    Bonjour,

    je débute (commencé y a 2 jours, connais C ANSI et VB4 ;o) et j'aimerais a titre d'exercice afficher l'heure courante sur ma boite de dialogue.

    Mais ma boite contient aussi un champ CEdit que l'utilisateur peut modifier quand il le souhaite.

    Pour l'instant, mon code est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    void CZeClassDlg::OnTimer(UINT nIDEvent)
    {
    	CTime curTime = CTime::GetCurrentTime();
    	m_txHeureCourante=curTime.Format("%H:%M:%S");
    	UpdateData(false);
     
    	CDialog::OnTimer(nIDEvent);
    }
    m_txHeureCourante etant une variable sur un static text.

    Le probleme est que si l'utilisateur ecrit qqchose dans le CEdit, le UpdateData(false) l'effacera a chaque seconde, puisqu'il remettra la variable du CEdit qui est toujours vide !

    J'ai pensé a mettre un UpdateData(true) juste avant l'affectation de m_txHeureCourante (et ca marche si je fait ca), mais je voulais savoir si il n'y avait pas une fonction plus localisée me permettant de mettre a jour UNIQUEMENT le champ m_txHeureCourante.

    Merci ;o)

    Fladnag

  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
    Points : 17 323
    Points
    17 323
    Par défaut
    salut au lieu de faire UpdateData(FALSE);
    utilise plutot SetWindowText sur le static:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    MonStatic.SetWindowText(curTime.Format("%H:%M:%S"));
    ce qui permet de faire un maj individuelle du contrôle le pendant c'est GetWindowText

  3. #3
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Points : 1 565
    Points
    1 565
    Par défaut Merci !
    C'est exactement ce que je cherchais, et ca marche ;o)

    Fladnag

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

Discussions similaires

  1. [MFC][Debutant] Une classe perso de CEdit
    Par kiroukou dans le forum MFC
    Réponses: 6
    Dernier message: 21/06/2005, 15h07
  2. [MFC] Thread et timer
    Par r0d dans le forum MFC
    Réponses: 2
    Dernier message: 18/04/2005, 13h03
  3. [MFC][debutant] probleme pour déclarer une structure
    Par Robleplongeur dans le forum MFC
    Réponses: 10
    Dernier message: 21/02/2005, 13h29
  4. Réponses: 2
    Dernier message: 05/05/2004, 23h02
  5. [MFC] Recuperation ID d'un CEdit
    Par leskritiques dans le forum MFC
    Réponses: 20
    Dernier message: 22/04/2004, 09h58

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