J'ai aussi les erreursEnvoyé par Médinoc;
C2039: 'Add' : n'est pas membre de 'System::String' //1)
error C2275: 'System::String' : utilisation non conforme de ce type comme expression 1)
error C2059: erreur de syntaxe : ',' 1)
J'ai aussi les erreursEnvoyé par Médinoc;
C2039: 'Add' : n'est pas membre de 'System::String' //1)
error C2275: 'System::String' : utilisation non conforme de ce type comme expression 1)
error C2059: erreur de syntaxe : ',' 1)
Non, dict n'est pas une String^, c'est un Dictionary^.
J'ai fait une faute dans le code, j'avais oublié le ^.
Code C++/CLI corrigé : 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 using namespace System::Collections::Generic; void UneFonction(void) { Dictionary< String^, String^ > ^ dict; dict = gcnew Dictionary< String^, String^ >(); dict->Add(L"O006", L"Condamnation tous modes : impossible sur un seul ouvrant latéral arrière"); dict->Add(L"O007", L"Message 1"); dict->Add(L"O008", L"Message 2"); dict->Add(L"O009", L"Message 3"); //etc. String^ a = textBox1->Text; textBox2->Text = dict[a]; }
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.
Le code fonctionne mais je n'ai pas pus tester sur 100 codes (il faut tout retaper), je verai demain pour ajouter le message en cas d'erreur de code car actuellement ça plante si il ne trouve rien (normal).
Merci encore une fois !!!
Bonne soirée.
Super ça fonctionne !!!
dans le cas ou la saisie dans la textbox1 n'est pas pas dans la liste je ne trouve pas la condition if adéquate pour arrêter la recherche en affichant message ex retapez votre code .
devient
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 String^ a = textBox1->Text; textBox2->Text = dict[a];
[EDIT]: N'oublie pas la fonction aide de ton editeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 String^ a = textBox1->Text; String^ Result; //ContainsKey renvoie false i la clé n'est pas trouvé //Si elle est trouvé, alors le deuxieme paramêtre contient la valeur associée à la clé if(dict->ContainsKey(a, Result) textBox2->Text = Result; else textBox2->Text = L"Commande non trouvée";
que veus tu dire ?
J'ai essayé cet apres midi avec dict->ContainsKey mais je n'y suis pas arrivé j'ai toujours les erreurs :
l'élément parenthèse '(' gauche de '\form1.h' n'a pas été équilibré correctement
error C2660:'System::Collections::Generic:ictionary<TKey,TValue>::ContainsKey' : la fonction ne prend pas 2 arguments
error C2146: erreur de syntaxe : absence de ')' avant l'identificateur 'label1'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 label1->Visible = true; String^ a = textBox1->Text; String^ Result; if(dict->ContainsKey(a, Result) {label1->Text = Result; } else { label1->Text = L"Commande non trouvée"; } }
Es-tu incapable de regarder l'aide ?
Il suffit de retirer Result des paramètres de ContainsKey()...
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.
Ouuupppsss...
Code : Sélectionner tout - Visualiser dans une fenêtre à part if(dict->TryGetValue(a, Result))
Ah oui, utiliser ContainsKey() seul n'aurait pas eu l'effet souhaité, c'est bien TryGetValue() qu'il faut...
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.
Merci pour votre patience et votre aide car sans vous c'était mission impossible
j'ai beaucoup appris mais il m'en reste beaucoup a apprendre !!
J'ai parcouru beaucoup de tuto et page sur les bases mais ça ne sert a rien car les bases sont expliqué sur des appli consoles et lorsque on code avec visual on est perdu et les commandes ex scanf , printf etc ne sont d'aucune utilités et il faut recommencer a apprendre mais là je n'ai rien trouvé de clair en la matière pour un débutant comme moi .En tout je vous souhaite une tres tres bonne et heureuse Années 2008 .
@++ Lolo81
Partager