Salut,
Lorsqu'on configure une EditBox avec un SpinControl, on la configure en nombre et ensuite les GetWindowtext, GetWindow.. ne fonctionnent plus afin de récupérer la valeur dans l'EditBox...
Quelqu'un aurait-il une idée...
Salut,
Lorsqu'on configure une EditBox avec un SpinControl, on la configure en nombre et ensuite les GetWindowtext, GetWindow.. ne fonctionnent plus afin de récupérer la valeur dans l'EditBox...
Quelqu'un aurait-il une idée...
salut,
je ne vois pas pourquoi ça ne fonctionnerait plus ...
une fenêtre reste une fenêtre et sa propriété texte est toujours accessible.
il y a certainement autre chose.
comment procèdes tu ?
![]()
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
J'ai créé une fonction EN_CHANGE associé à la fenêtre Edit et voilà ce qui il a dedans :
ça ne me génère aucune erreur mais ça plante...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 CDataFile* File= new CDataFile("MonFichier.ini"); char *stopstring; CString Value; int NumValue; m_MyEdit.GetWindowText(Value); NumValue = strtoul(Value, &stopstring, 10); File->WriteProfileInt("MySection","MyKey",NumValue); delete(File);
que vaut myEdit ?
est-il initialisé ? a quel moment fais-tu ca ?
En fait j'ai associé un SpinControl à l'EditBox, et dès que j'incrémente la valeur dans l'EditBox à l'aide de ce SpinControl, je rentre dans la fonction EN_CHANGE de l'EditBox où il y a le code que j'ai posté plus haut.
Ai-je répondu à ta question ?
m_myEdit est il bien associé à l'édit ??
tu peux contrôler que le hwnd a une valeur qui est valide... ainsi que le reste des données membre...
En fait, m_MyEdit est l'EditBox, et le SpinControl est bien lié (je pense) car lors de l'exécution il modifie bien la valeur contenu dans l'EditBox, et c'est là, une fois que l'editBox change, qu'on rentre dans la fonction EN_CHANGE de l'EditBox, où il y a le code posté plus haut...
Pour ce qui est de vérifié si hwnd et le reste des données membres a une valeur valide, je ne pourrai le faire que demain matin...
Merci pour le coup de main...![]()
Lorsque le déroulement du programme arrive à l'instruction GetWindowText, c'est à dire qu'il ne l'a pas encore exécuter, le m_hWnd et tout les parametres sont à 0... ensuite ça plante...
salut,
un grand classique....
comment tu as rajouté cette variable ? manuellement ou avec l'assistant ?
une variable est associée à son identifiant dans les ressources par une ligne dans le bloc dodataexchange.
c'est le cas ?
on peut voir cette portion de code ?
![]()
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
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 CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CControle_ConnecteurMVDlg) DDX_Control(pDX, IDC_COMBO5, m_Reflection); DDX_Control(pDX, IDC_EDIT3, m_Seuil); DDX_Control(pDX, IDC_EDIT2, m_NbProfils); DDX_Control(pDX, IDC_EDIT4, m_ShutterTime); DDX_Control(pDX, IDC_EDIT1, m_NumChamp); DDX_Control(pDX, IDC_COMBO6, m_Trigger); DDX_Control(pDX, IDC_COMBO4, m_ChoixProduit); DDX_Control(pDX, IDC_COMBO3, m_Champ); DDX_Control(pDX, IDC_COMBO2, m_ResProfil); DDX_Control(pDX, IDC_BUTTON5, m_PosHomeMoteur); DDX_Control(pDX, IDC_BUTTON4, m_InitParamlaser); DDX_Control(pDX, IDC_SPIN3, m_NumShutter); DDX_Control(pDX, IDC_SPIN2, m_NumSeuil); DDX_Control(pDX, IDC_SPIN1, m_NumProfils); DDX_Control(pDX, IDC_BUTTON3, m_Acquisition); DDX_Control(pDX, IDC_BUTTON2, m_Deconnexion); DDX_Control(pDX, IDC_BUTTON1, m_Connexion); DDX_Control(pDX, IDC_SBARCTRL1, m_StatusBar); DDX_Control(pDX, IDC_IMAGE1, m_VisuProdOK); DDX_Control(pDX, IDC_IMAGE2, m_VisuProdDefaut); DDX_Control(pDX, IDC_TEXTBOX1, m_InfoProg); //}}AFX_DATA_MAP
J'ai donc lié le Spin3 à l'Edit4, avec l'assistant...
Aurai-je fais une erreur ?
oui,je ne vois nulle part de m_MyEdit dans ce bloc donc ce n'est pas étonnant....
tu as vu ce post de la faq sur les spin:
http://c.developpez.com/faq/vc/?page...pinUpAutoBuddy
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
C'est vrai excuse moi dans le post j'ai généralisé le nom, mais en fait ce n'est pas m_MyEdit, mais m_ShutterTime et pour le Spin c'est m_NumShutter..
Désolé pour la confusion, mais je me suis justement servi de ta faq pour les liés et ça marche nickel c'est juste lorsque je faire getwindowtext...
C'est pour ça que je ne comprends pas car ça compile bien pourtant...
alors il n'y a pas 36 solutions:
soit dans la ressource pour ce controle ce n'est pas IDC_EDIT4 son identifiant.
soit dans la fonction OnInitDialog tu as enlevé l'appel de cette fonction à la classe de base ,ou tu as enlevé le UpdateData(FALSE);
![]()
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
C'est bien Edit4 l'identifiant, par contre je ne trouve pas updatedata(false), ou doit-il etre ?
il ne te manquerait pas plutot ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 BOOL CDlgAdvanced::OnInitDialog() { CDialog::OnInitDialog(); // cette ligne existe bien ???? .... }![]()
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
Et oui elle y est bien...
Des trucs comme ça moi ça me tue, parce que vu que l'application plante il est impossible de savoir quel est son problème...
![]()
bon ce n'est pas normal tout ça ...
met un point d'arret dans dodataexchange
lance ta dialog ,tu dois rentrer dans cette fonction.
fait avancer pas a pas .
tu dois passer sur la ligne concernant cet edit IDC_EDIT4
apres cette ligne le controle doit avoir sa donnée membre m_hWnd non nulle
sinon tu as une assertion d'erreur.
mais à mon avis tu n'y passes pas ou alors on parle d'une autre variable...
![]()
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
Concernant cet Edit4, m_hWnd est bien non nulle, et aucune erreur sur les données membres...
J'ai fait de même sur le spin associé, idem...
Ne penses-tu pas que cela pourrait venir du fait que j'ai coché certaines cases dans les propriétés de cet Edit et de ce Spin, ou alors de la Fonction de l'Edit : EN_CHANGE, est-ce la plus appropriée pour aller récupérer le texte dans cet Edit à chaque changement et le sauvegarder ?
Partager