BCB6 Fonction de fonction
Bonjour,
Je suis en train de refaire un code à base de fonctions de fonction.
- Dans mon programme, au démarrage, j'ai écrit ce qui suit:
Code:
1 2 3 4 5 6 7
|
void __fastcall TForm1::FormCreate(TObject *Sender)
{
InstancesIni = ExtractFilePath(Application->ExeName) + "\\Ressources\\Instances.ini";
InitPerso(1, CheminFic):
} |
- Plus haut, j'ai mes fonctions:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
void __fastcall TForm1::InitPerso(int NumPerso, AnsiString CheminFic)
{
AnsiString Section;
Section = "Perso" + IntToStr(NumPerso);
this->EditNomPerso1 = ChargerDonnees(Section, "Nom", CheminFic);
}
AnsiString __fastcall TForm1::ChargerDonnees(AnsiString ASection, AnsiString AClef, AnsiString ACheminFic)
{
char CSection[50], CClef[50], CDonnee[50], CCheminFic[50];
AnsiToChar(CSection, ASection);
AnsiToChar(CClef, AClef);
AnsiToChar(CCheminFic, ACheminFic);
//Charge la donnée slectionné par les paramètres.
GetPrivateProfileString(CSection, CClef, "@", CDonnee, sizeof(CDonnee), CCheminFic);
return CDonnee;
} |
Ce qui se passe c'est que dans la fonction InitPerso(), j'ai une erreur sur la ligne qui suit:
this->EditNomPerso1 = ChargerDonnees(Section, "Nom", CheminFic);
et le jolie message d'erreur suivant:
[C++ Erreur] ProjetWI.cpp(45): E2034 Impossible de convertir 'AnsiString' en 'TEdit *'
Je suppose que je ne peux pas ainsi faire un return mais pourquoi ?
Pourriez-vous éclairer mes lanternes car j'ai beau cherché dans Fonction, Appel de fonction... je ne vais pas tous les énumérer, je ne retrouve pas mon cas.
Cordialement.