Bonjour,
j'ai une boîte de dialogue, avec des données échangées de manière classiquedésolé pour les termes approximatifs) avec :
reproduireEntreeRC est un int à 1 si la "check box IDC_SIMULE_IDEM" est cochée, à 0 sinon.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 void CSimuleRC::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CSimuleRC) // NOTE: the ClassWizard will add DDX and DDV calls here DDX_Check(pDX, IDC_SIMULE_IDEM, reproduireEntreeRC); //}}AFX_DATA_MAP }
Par ailleurs, j'utilise la classe CCom de Farscape, qui envoie à ma CSimuleRC les messages concernant le port série.
Mon problème : tant que le thread de communication n'est pas lancé, l'échange de données (= la mise à jour automatique de la variable reproduireEntreeRC ) se fait parfaitement, avec apparition et disparition de la coche.
Mais lorsque le port COM est ouvert, que le thread de comm se lance et que le transfert de données série fonctionne (parfaitement par ailleurs), l'automatisation de données de fonctionne plus : la checkbox ne réagit plus, et reproduireEntreeRC ne change plus de valeur.
(idem pour des sliders , ils deviennent figés)
Merci d'avance de m'expliquer ce qui se passe
Bon week-end
Philippe
Partager