salut,
j'ai une petite application sur vb .
j'ai 3 form je passe du form 1 au form 2 puis form 3 je veux importer des valeurs de form1 vers 3 et les afficher dans des textbox.
merci de m'aider
salut,
j'ai une petite application sur vb .
j'ai 3 form je passe du form 1 au form 2 puis form 3 je veux importer des valeurs de form1 vers 3 et les afficher dans des textbox.
merci de m'aider
Dernière modification par Deepin ; 30/03/2011 à 17h42. Motif: Suppression de mention de type "aidez moi" du message
Il te suffit de les passer en paramètre dans le constructeur,qu'il faut du coup redéfinir dans ta Form3.
Exemple :
Si le form3 n'est accessible que depuis le form2, tu devras également redéfinir le constructeur de form2 de la même façon.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Public Sub New(Byval taValeur1 as Integer, ByVal taValeur2 as String,...) 'ici tu peux les utilisées End Sub
Réponds ici, pas par MP
Bref, en gros, c'est une histoire de portée de variables. Une variable de classe sera connue uniquement dans l'instance de la classe.
Ici les variables voulues sont (si j'ai bien compris), initialisées dans ta classe form1, donc tant tu seras sur une instance de la classe form1, tu pourras y accéder mais dès que tu passeras à ta classe form2 ou form3, elles ne seront pas accessibles (et peut être détruite si tu détruit ta form1).
Donc, pour y avoir accès dans les classes form2 et form3, il faut que tu les passes en paramètre à la fonction de création de ces classes (les constructeurs), comme je dans l'exemple de code que j'ai posté au dessus.
Cependant, les variables passées en paramètres ne seront accessibles elles, que durant l'exécution du constructeur (en gros entre le "Sub" et le "End Sub"), donc si tu veux les utilisées en dehors, il te faudra les redéfinir en variable de classe dans tes classes form2 et form3.
Après les explications, un peu de code:
Et voila, ensuite tu fais la même chose pour form3 et tu pourras les utiliser dedans.
Code : 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
17
18
19
20
21
22
23
24
25
26
27
28
29
30 Public Class form1 Sub uneFonction() 'Les variables à passer aux autres classes Dim uneVariable As String = "toto" Dim uneAutre As Integer = 12 'Appel du constructeur de form2 Dim form2 As New form2(uneVariable, uneAutre) form2.Show() End Sub End Class Public Class form2 Dim maString As String Dim monInt As Integer Public Sub New(ByVal param1 As String, ByVal param2 As Integer) 'Je sauvegarde mes paramètre dans des variables de classe pour les réutiliser en dehors du constructeur maString = param1 monInt = param2 End Sub Public Sub uneFonction() 'Appel du constructeur de form3 End Sub End Class
j'espère avoir été clair![]()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager