Un variable qui perd sa valeur lors du hide d'une fiche secondaire [Résolu]

Signaler
Messages postés
223
Date d'inscription
mercredi 21 juillet 2004
Statut
Membre
Dernière intervention
15 février 2006
-
jmp77
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
-
salut

j'ai une variable (globale) qui enregistre l'emplacement du fichier en cours d'utilisation.

le probleme cest que quand je fait afficher une autre fenetre (form3.show) puis que je fais (form3.hide) cette variable perd sa valeur.

( elle perd sa valeur dans le hide)

est ce que c normal??

voici mon code pour le hide :

procedure TForm3.BitBtn1Click(Sender: TObject);
var machaine : string ;
machaine2 : string ;
begin
machaine := copy(label2.caption,2,Length(label2.caption)-2);
machaine2 := copy(label3.caption,2,Length(label3.caption)-2);
form1.Edit2.text := form1.Edit2.text + stringreplace(machaine,' ','',[rfreplaceall]) + ' ' + stringreplace(machaine2,' ','',[rfreplaceall]);
form3.hide ;
end;

donc apres le clic de se bouton ma variable perd sa valeur

6 réponses

Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
9
Le code complet que tu m'as passé en pv m'a permis de trouver la solution :

En effet, tu as mis le code suivant :
procedure TForm1.FormActivate(Sender: TObject);
begin
chemfich := '' ;
end;

Ce qui fait qu'à chaque fois que la form1 est activée, la variable 'chemfich' est réinitialisée. Donc dans le cas ou tu fermes la form3, la form1 est réactivée donc le contenu de ta variable 'chemfich' disparait ;)

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! :)
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
4
Hello,
Si ta fameuse variable dont tu parles est machaine ou machaine2 c'est tout a fait normal que tu perdes la valeur car c'est une variable local. Si tu veux conserver la valeur de cette variable tu dois la déclarer en global.

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
Messages postés
13
Date d'inscription
mercredi 20 octobre 2004
Statut
Membre
Dernière intervention
1 janvier 2005

Salut!
les variables machaine et machaine2 sont des variables locales càd qu'elles ne sont limitées qu'à la procedure. essaye de déclarer celle des deux qui t'intéresse dans la partie implémentation.
Messages postés
223
Date d'inscription
mercredi 21 juillet 2004
Statut
Membre
Dernière intervention
15 février 2006

en passant ma variable est une variable globale
Messages postés
223
Date d'inscription
mercredi 21 juillet 2004
Statut
Membre
Dernière intervention
15 février 2006

en passant ma variable est une variable globale
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
4
LOL merci de ne nous tenir au courant Ni69 c'est cool.

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.