Instancier form avec meme variable sans meme valeur [Résolu]

Messages postés
4
Date d'inscription
jeudi 24 octobre 2013
Dernière intervention
25 octobre 2013
- - Dernière réponse : RENEFRANCIS78
Messages postés
4
Date d'inscription
jeudi 24 octobre 2013
Dernière intervention
25 octobre 2013
- 25 oct. 2013 à 14:09
bonjour,

Mon formulaire form1 s'ouvre et grâce à un bouton de commande j'enregistre la valeur d'une variable V1 qui apparait dans form1.text

Si j'instancie une nouvelle form1 et que je rentre la nouvelle valeur dans V1, je perd la premier valeur au profit de la seconde. A chaque fois, chaque form a la dernière valeur rentrée dans V1 dans form.text

Comment faire pour que chaque form ait chacune les valeurs que je rentre ?

merci de vos réponse
Afficher la suite 

Votre réponse

5 réponses

Messages postés
8728
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
27 janvier 2014
0
Merci
Bonjour,
j'enregistre la valeur d'une variable V1
Où tu l'enregistre ?
Et ensuite, si c'est toujours la même forme, quelle valeur de V1 tu voudras avoir .
A+

Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
Note: Je ne répond pas aux MP pour les questions techniques. Et ma boule de cristal est cassée .
Commenter la réponse de lermite222
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
0
Merci
Bonjour,
Cette phrase :
Comment faire pour que chaque form ait chacune les valeurs que je rentre
n'a aucun sens technique.
- un form n'a pas de valeur
- s'il s'agit de valeurs successives attribuées à une variable (et non à un form), cette variable doit alors être publique et revêtir l'aspect d'un tableau.
ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
-
Et s'il s'agit en plus (bien que non précisé dans l'exposé) de conserver ces valeurs entre deux sessions de l'application, c'est encore autre chose...
Attendons donc les précisions du demandeur .
RENEFRANCIS78
Messages postés
4
Date d'inscription
jeudi 24 octobre 2013
Dernière intervention
25 octobre 2013
-
bonjour,
je vais tenté d'etre plus clair
j'ai unr form1 (la première qui apparait au lancement de l'exe) avec un bouton de commande. En cliquant sur ce bouton, je rentre une valeur string à une variable V1 (qui est public et déclarée dans un module) et j'instancie une nouvelle form2 dans la quelle je vais utiliser cette variable.
Si je clique de nouveau sur le bouton de commande de la form1, j'entre une nouvelle valeur à V1 et j'instancie une nouvelle form3.
Mon problème est le suivant : V1 a la même valeur pour toutes les forms (2 + 3). Or je souhaite que V1 conserve sa valeur pour chaque form.
Comment faire ?
ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
-
toujours pas clair pour moi.
Donne un exemple (avec étape1, étape2;, etc ...)
Commenter la réponse de ucfoutu
Messages postés
4
Date d'inscription
jeudi 24 octobre 2013
Dernière intervention
25 octobre 2013
0
Merci
Dans un module
Public facceuil As New frmAccueil
Public f As New Form1
Public V1 As String

Dans la form1

#Region "ouvrir dossier par double cick ou par F9"
'double click sur un dossier choisi dans la listbox

Public Sub lstDossier_doubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lstDossier.DoubleClick

Dim s As String


s = L1.SelectedItem.ToString

'On affiche la boite de dialogue pour savoir si on accepte le dossier choisi
Dim reponse As Int16
reponse = MessageBox.Show(s, "Ouvrir le dossier suivant ?", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly)
Select Case reponse
Case 6 'oui, bon dossier
V1 = s
Dim fAccueil2 As New frmAccueil 'pour creer un nouveau formulaire
fAccueil2.Show() 'on ouvre frmAccueil
fAccueil2.text= V1

Case 7 'non pas bon dossier
Exit Sub
End Select

End Sub

Donc le probleme est le suivant :
A chaque fois que j'instancie une nouvelle form (Dim fAccueil2 As New frmAccueil 'pour creer un nouveau formulaire) , V1 s'affiche dans chaque fAccueil2.text des forms instanciées. Or je souhaite que chaque form.text garde la V1 rentrée précédemment lorsque l'on clique sur la listbox
Commenter la réponse de RENEFRANCIS78
Messages postés
8728
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
27 janvier 2014
0
Merci
Bonjour Ucfoutu,
@RENEFRANCIS78
Mettre une variable locale dans chaque forme que tu ouvre et te servir de celle là.
Exemple:
Public Class Form2

Dim CopieV1 As String

Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
CopieV1 = v1
Textbox1.text = CopieV1
End Sub
End Class

A+
Commenter la réponse de lermite222
Messages postés
4
Date d'inscription
jeudi 24 octobre 2013
Dernière intervention
25 octobre 2013
0
Merci
C'est parfait !!!
Dire que c'était si simple ...
Merci encore
Commenter la réponse de RENEFRANCIS78

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.