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 :

MFC variable qui ne prend pas la valeur d'un retour de fonction


Sujet :

C++

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2017
    Messages : 1
    Points : 3
    Points
    3
    Par défaut MFC variable qui ne prend pas la valeur d'un retour de fonction
    Bonjour à tous,

    je réalise un projet en mfc, le soucis étant que je possède une méthode LireVitesse avec un retour en int ! Je souhaite transférer cette valeur sur un edit control mais la valeur de celui ci affiche une valeur non correcte ! Je vous mets mon code !

    Voici Ma methode :

    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
    int Ccommunication::LireVitesse(uint16_t ui16DevIdx, uint16_t ui16BusIdx)
    {
    	do
    	{
    	tStatus = CanGetEvent( ui16DevIdx, ui16BusIdx, &tEvent);
    	if( STATUS_OK == tStatus )
    		{
     
    			if(tEvent.dwIdent == 0x3A)
    			{
     
    					Vitesse=tEvent.bData[0];
    					Vitesse<<=8;
    					Vitesse+=tEvent.bData[1];
    					Vitesse = Vitesse/100;
     
     
    			}
    		}
    	}while(STATUS_OK == tStatus);
    	return Vitesse;
     
    }
    et voici la partie ou je déclare cette méthode

    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
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    // CfaireEssaiVitesse.cpp*: fichier d'implémentation
    //
     
    #include "stdafx.h"
    #include "TwizyDiag.h"
    #include "CfaireEssaiVitesse.h"
    #include "afxdialogex.h"
    #include "Parametres.h"
    #include "Sauvegarder.h"
    #include "Ccommunication.h"
     
    // Boîte de dialogue CfaireEssaiVitesse
     
    IMPLEMENT_DYNAMIC(CfaireEssaiVitesse, CDialogEx)
     
    CfaireEssaiVitesse::CfaireEssaiVitesse(CWnd* pParent /*=NULL*/)
    	: CDialogEx(CfaireEssaiVitesse::IDD, pParent)
    	, m_iVitesse(0)
    {
     
     
     
    }
     
    CfaireEssaiVitesse::~CfaireEssaiVitesse()
    {
    }
     
    void CfaireEssaiVitesse::DoDataExchange(CDataExchange* pDX)
    {
    	CDialogEx::DoDataExchange(pDX);
    	DDX_Control(pDX, IDC_STOPPERESSAI, m_StopperEssai);
    	DDX_Control(pDX, IDC_REFAIREESSAI, m_RefaireEssai);
    	DDX_Control(pDX, IDC_SAUVEGARDER, m_Sauvegarder);
    	DDX_Text(pDX, IDC_VITESSE, m_iVitesse);
    }
     
     
    BEGIN_MESSAGE_MAP(CfaireEssaiVitesse, CDialogEx)
    	ON_WM_TIMER()
    	ON_BN_CLICKED(IDC_QUITTER, &CfaireEssaiVitesse::OnBnClickedQuitter)
    	ON_BN_CLICKED(IDC_STOPPERESSAI, &CfaireEssaiVitesse::OnBnClickedStopperessai)
    	ON_BN_CLICKED(IDC_SAUVEGARDER, &CfaireEssaiVitesse::OnBnClickedSauvegarder)
    	ON_BN_CLICKED(IDC_REFAIREESSAI, &CfaireEssaiVitesse::OnBnClickedRefaireessai)
    END_MESSAGE_MAP()
     
    BOOL CfaireEssaiVitesse::OnInitDialog()
    {
    	CDialogEx::OnInitDialog();
     
    	// Définir l'icône de cette boîte de dialogue. L'infrastructure effectue cela automatiquement
    	//  lorsque la fenêtre principale de l'application n'est pas une boîte de dialogue
    	SetIcon(m_hIcon, TRUE);			// Définir une grande icône
    	SetIcon(m_hIcon, FALSE);		// Définir une petite icône
     
    	// TODO: ajoutez ici une initialisation supplémentaire
    	OnStartTimer();
     
     
    	return TRUE;  // retourne TRUE, sauf si vous avez défini le focus sur un contrôle
    }
    void CfaireEssaiVitesse::OnStartTimer() 
    {
       m_nTimer = SetTimer(1, 100, 0);
    }
    void CfaireEssaiVitesse::OnStopTimer() 
    {
       KillTimer(m_nTimer);   
    }
     
    void CfaireEssaiVitesse::OnTimer(UINT_PTR nIDEvent) 
    {
     
    	UpdateData(TRUE);
     
     
    		m_iVitesse=MaCommunication.LireVitesse(MaCommunication.ui16DevIdx,MaCommunication.ui16BusIdx);
     
     
    	CDialogEx::OnTimer(nIDEvent);
    	UpdateData(FALSE);
    }

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Vitesse n'est jamais réglé si tStatus n'est pas STATUS_OK. Est-ce normal?
    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.

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

Discussions similaires

  1. [XL-2003] Variable qui ne retient pas la valeur
    Par Marc_27 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/07/2009, 09h16
  2. dropdown qui ne prend pas de valeur
    Par label55 dans le forum C#
    Réponses: 0
    Dernier message: 27/05/2009, 14h21
  3. requete qui ne prend pas comme valeur de critère le contenu d'un champs
    Par alassanediakite dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 16/08/2007, 13h42
  4. Réponses: 10
    Dernier message: 07/01/2007, 12h03
  5. [Tableaux] Variable qui ne prend pas sa valeur
    Par stephane78 dans le forum Langage
    Réponses: 11
    Dernier message: 19/08/2006, 20h30

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