Accèder a un label depuis une classe

Résolu
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006 - 14 avril 2006 à 21:39
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006 - 15 avril 2006 à 14:25
salut a tous
jai besoin d'un petit coup de pousse.
voici mon probleme:

programmation en vb.net

jai une classe dans un module de classe et jai deux forms (form1 et form2).
je voudrais acceder un label qui se trouve dans la form1 et lui affecter du text !

Voici ce que je propose ,mais sa nemarche !

voici la classe ( c'est une classe bidon rien pour l'essaie)

Imports System.Windows.Forms.Control
Public Class moi

Private un As String

Public Sub ok(ByVal toi As String)

Dim unform As New Form1
'c'est ici que je acceder a mon label1
unform.Label1.Text = toi

End Sub

ET JAPPELLE CETE METHODE DANS FORM_LOAD

rivate Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim unmoi As New moi
Dim salut As String

salut = "salut moi"
unmoi.ok(salut)

End Sub

End Class

merci d'avance

6 réponses

cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
15 avril 2006 à 11:55
Dans ce cas fait autrement, passe ton label en argument

Public Class Form1

Private
Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load


Dim cT As New Test
cT.ok("bonjour", Label1)


End
Sub

End
Class

Public Class Test

Public
Sub ok(ByVal toi As String, ByRef
UnLabel As Label)

Dim LabelTmp As New Label
LabelTmp = UnLabel

LabelTmp.Text = toi

UnLabel = LabelTmp

End Sub

End Class
3
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
15 avril 2006 à 00:57
Bonsoir,

Public Sub ok(ByVal toi As String)

<STRIKE> Dim unform As New Form1</STRIKE>
'c'est ici que je acceder a mon label1
Form1.Label1.Text = toi

End Sub
0
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
15 avril 2006 à 10:13
Salut à toi

jai essayé ta proposition mais sa ne marche pas.Je pense qui faut intancié un objet form pour acceder a un label!!!
0
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
15 avril 2006 à 11:16
Pour vérifier, j'ai essayé ce que je t'ai proposé, cela marche tu n'as pas besoin dans ta classe d'instancier l'objet form.

As-tu quelques chose de similaire:

Public
Class Form1

Private
Sub Form1_Load(
ByVal sender
As
Object,
ByVal e
As System.EventArgs)
Handles
Me.Load


Dim cT
As
New Test
cT.ok(
"bonjour")


End
Sub

End
Class

Public
Class Test

Public
Sub ok(
ByVal toi
As
String)
Form1.Label1.Text = toi

End
Sub

End
Class
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
15 avril 2006 à 11:23
resalut merci encore pour ton aide mais sa ne marche pas chez moi.

il m'affiche : C:\Documents and Settings\berenger\Mes documents\Visual Studio Projects\unessai\moi.vb(9): Une référence à un membre non partagé requiert une référence d'objet.

donc je sais d'ou sa viens. Peut etre il faut impoter une classe?

merci d'avance
0
boss2000 Messages postés 40 Date d'inscription mardi 10 mai 2005 Statut Membre Dernière intervention 15 avril 2006
15 avril 2006 à 14:25
merci beaucoup
pour ton aide .
je voulais savoir si tavais une adresse mail msn pour que je te met dans mes contact.

merci d'avance
0
Rejoignez-nous