Actualisation d'un thread d'affichage MFC C++
Résolu
siskozed
Messages postés
69
Date d'inscription
Statut
Membre
Dernière intervention
-
siskozed Messages postés 69 Date d'inscription Statut Membre Dernière intervention -
siskozed Messages postés 69 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je réalise en ce moment un programme qui récupère des données météo et qui les enregistre dans un tableau. Je veux ensuite les afficher toutes les 2 secondes dans mon IHM dans des "static text".
Comment puis je faire ?
Voici ce à quoi je pense pour la fonction executée par mon thread d'affichage :
Mais cette méthode ne marche pas... Unhandled exception...
Je réalise en ce moment un programme qui récupère des données météo et qui les enregistre dans un tableau. Je veux ensuite les afficher toutes les 2 secondes dans mon IHM dans des "static text".
Comment puis je faire ?
Voici ce à quoi je pense pour la fonction executée par mon thread d'affichage :
class CAffiche : public CWinThread { ... private: int* m_dvent; int* m_hygro; int* m_hygroB; int* m_hygroC; int* m_hygroD; int* m_hygroF; float* m_tempB; float* m_tempC; float* m_tempD; float* m_tempF; float* m_temp; float* m_pluie; float* m_vent; ... }
int CAffiche::Run() { while(1) { SetValeurs(); SetViewAffiche (int* hygro, int* hygroB, int* hygroC, int* hygroD, int* hygroF, float* temp, float* pluie, float* vent, float* tempB, float* tempC, float* tempD, float* tempF); Sleep(2000); } return (0); } void CAffiche::SetValeurs() { m_pDonnees->m_pVerrouAffiche.Lock(); //assignation des valeurs pour les serres *m_tempB = m_pDonnees->acquisitionReelleSerre[0][0]; *m_tempC = m_pDonnees->acquisitionReelleSerre[0][1]; *m_tempD = m_pDonnees->acquisitionReelleSerre[0][2]; *m_tempF = m_pDonnees->acquisitionReelleSerre[0][3]; *m_hygroB = (int)m_pDonnees->acquisitionReelleSerre[1][0]; *m_hygroC = (int)m_pDonnees->acquisitionReelleSerre[1][1]; *m_hygroD = (int)m_pDonnees->acquisitionReelleSerre[1][2]; *m_hygroF = (int)m_pDonnees->acquisitionReelleSerre[1][3]; //assignation des valeurs pour le climat exterieur *m_temp = m_pDonnees->acquisitionReelleMeteo[0]; *m_hygro = (int)m_pDonnees->acquisitionReelleMeteo[1]; *m_pluie = m_pDonnees->acquisitionReelleMeteo[2]; *m_vent = m_pDonnees->acquisitionReelleMeteo[3]; m_pDonnees->m_pVerrouAffiche.Unlock(); } void CAffiche::SetViewAffiche( int* hygro, int* hygroB, int* hygroC, int* hygroD, int* hygroF, float* temp, float* pluie, float* vent, float* tempB, float* tempC, float* tempD, float* tempF) { m_hygro = hygro; m_hygroB = hygroB; m_hygroC = hygroC; m_hygroD = hygroD; m_hygroF = hygroF; m_tempB = tempB; m_tempC = tempC; m_tempD = tempD; m_tempF = tempF; m_temp = temp; m_pluie = pluie; m_vent = vent; CMyProjectDoc * m_pDonnees; }
Mais cette méthode ne marche pas... Unhandled exception...
A voir également:
- Actualisation d'un thread d'affichage MFC C++
- Affichage double ecran - Guide
- Windows 11 affichage classique - Guide
- Problème affichage fenêtre windows 10 - Guide
- Affichage youtube trop grand ✓ - Forum YouTube
- Casio fx-92 affichage décimal ✓ - Forum calculatrices
2 réponses
bon, c'est bon j'ai trouvé, j'étais sur une mauvaise piste avec ma classe CAffiche. En fait, ma classe CAffiche n'est rien d'autre que ma classe C...View Je dois faire un OnTimer en passant en parametre 5000 pour qu'il effectue ca toutes les 5 secondes. et je n'ai plus qu'à faire des égalités standards en allant chercher le tableau de la classe C...Doc par un pointeur sur classe.
Voili voilou
Voili voilou