Récupérer le text d'une textBox

Signaler
Messages postés
21
Date d'inscription
jeudi 1 juillet 2004
Statut
Membre
Dernière intervention
31 août 2006
-
Messages postés
28
Date d'inscription
mardi 29 avril 2003
Statut
Membre
Dernière intervention
15 janvier 2016
-
je voudrai mettre le texte d'une textbox dans un char mais sa me met une erreur.

char* data;
data = (char*) malloc(15);
data = this->textBox1->Text;

et l'erreur est:
cannot convert from 'System::String_gc*' to 'char*'

5 réponses

Messages postés
28
Date d'inscription
mardi 29 avril 2003
Statut
Membre
Dernière intervention
15 janvier 2016

Tu n'as pas précisé sous quoi tu développe.

Si tu développe en C++ Builder, il est normal que tu es une erreur car l'élément Text est de type AnsiString, et il n'existe pas de transtypage char(AnsiString Variable). par contre, il existe une fonction pour la conversion c_str().

il te sufit donc de mettre
data = this->TextBox1->Text.c_str();
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
Dans ce cas la c'est strcpy qu'il faut utiliser :
strcpy(data, this->TextBox1->Text.c_str());

Par contre le 'System::String_gc' me parrait bizarre, tu ferais pas du C++ managé par hazard ? auquel cas la conversion c_str() n'est sans doute pas possible.
Messages postés
21
Date d'inscription
jeudi 1 juillet 2004
Statut
Membre
Dernière intervention
31 août 2006

je code en C++ .Net
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
Du vrai .Net ou c'est parce que tu t'es trompé dans les options du projet.
Avec Visual C++ .Net on peut faire du C++ standard et du C++ managé (pour le framework .net). Dans ce cas, la gestion des chaînes de caractères est plus délicate et je ne la maitrise pas. Le plus simple est alors d'utiliser des String plutôt que des char* pour manipuler des chaînes de caractères.
Messages postés
28
Date d'inscription
mardi 29 avril 2003
Statut
Membre
Dernière intervention
15 janvier 2016

désolé pour le strcpy, je l'ai complètement oublié