Si je crée cette procédure dans mon module, il ne reconnaît pas MainForm :
error BC30451: Name 'MainForm' is not declared
...
"Mathieu Francesch" wrote:
Bonjour Arnaud,
Si tu créé une procédure dans ton module
Public Sub ChangeTexte (ByVal texte As String) MainForm.labelDebug.Text=texte End Sub
Mathieu Francesch
Re,
En créant un nouvel objet dans ton module qui fait référence à Maiform :
Sub test() Dim MaMainForm As New MainForm MaMainForm.Label1.Text = "Test" End Sub
Que ce passe t-il ?
-- Cordialement,
Mathieu Francesch
"ArnaudG" wrote:
Bonjour Mathieu,
Si je crée cette procédure dans mon module, il ne reconnaît pas MainForm :
error BC30451: Name 'MainForm' is not declared
...
"Mathieu Francesch" wrote:
> Bonjour Arnaud, > > Si tu créé une procédure dans ton module > > Public Sub ChangeTexte (ByVal texte As String) > MainForm.labelDebug.Text=texte > End Sub
Re,
En créant un nouvel objet dans ton module qui fait référence à Maiform :
Sub test()
Dim MaMainForm As New MainForm
MaMainForm.Label1.Text = "Test"
End Sub
Que ce passe t-il ?
--
Cordialement,
Mathieu Francesch
epsilon@neuf.fr
"ArnaudG" wrote:
Bonjour Mathieu,
Si je crée cette procédure dans mon module, il ne reconnaît pas MainForm :
error BC30451: Name 'MainForm' is not declared
...
"Mathieu Francesch" wrote:
> Bonjour Arnaud,
>
> Si tu créé une procédure dans ton module
>
> Public Sub ChangeTexte (ByVal texte As String)
> MainForm.labelDebug.Text=texte
> End Sub
En créant un nouvel objet dans ton module qui fait référence à Maiform :
Sub test() Dim MaMainForm As New MainForm MaMainForm.Label1.Text = "Test" End Sub
Que ce passe t-il ?
-- Cordialement,
Mathieu Francesch
"ArnaudG" wrote:
Bonjour Mathieu,
Si je crée cette procédure dans mon module, il ne reconnaît pas MainForm :
error BC30451: Name 'MainForm' is not declared
...
"Mathieu Francesch" wrote:
> Bonjour Arnaud, > > Si tu créé une procédure dans ton module > > Public Sub ChangeTexte (ByVal texte As String) > MainForm.labelDebug.Text=texte > End Sub
ArnaudG
Il ne connait pas le type MainForm :
error BC30002: Type 'MainForm' is not defined
Il y a vraiment quelque chose qui m'échappe...
"Mathieu Francesch" wrote:
Re,
En créant un nouvel objet dans ton module qui fait référence à Maiform :
Sub test() Dim MaMainForm As New MainForm MaMainForm.Label1.Text = "Test" End Sub
Que ce passe t-il ?
Il ne connait pas le type MainForm :
error BC30002: Type 'MainForm' is not defined
Il y a vraiment quelque chose qui m'échappe...
"Mathieu Francesch" wrote:
Re,
En créant un nouvel objet dans ton module qui fait référence à Maiform :
Sub test()
Dim MaMainForm As New MainForm
MaMainForm.Label1.Text = "Test"
End Sub
En créant un nouvel objet dans ton module qui fait référence à Maiform :
Sub test() Dim MaMainForm As New MainForm MaMainForm.Label1.Text = "Test" End Sub
Que ce passe t-il ?
ArnaudG
... pour avancer un peu : j'ai l'impression que mon MainForm sait accéder à mon module, puisque les fonctions appelées fonctionnent, mais l'inverse n'est pas vrai :
module.vb ne sait pas que MainForm.vb existe
Est-ce possible ? Comment "rétablir la communication" ?
"ArnaudG" wrote:
Il ne connait pas le type MainForm :
error BC30002: Type 'MainForm' is not defined
Il y a vraiment quelque chose qui m'échappe...
"Mathieu Francesch" wrote:
> Re, > > En créant un nouvel objet dans ton module qui fait référence à Maiform : > > Sub test() > Dim MaMainForm As New MainForm > MaMainForm.Label1.Text = "Test" > End Sub > > Que ce passe t-il ?
... pour avancer un peu : j'ai l'impression que mon MainForm sait accéder à
mon module, puisque les fonctions appelées fonctionnent, mais l'inverse n'est
pas vrai :
module.vb ne sait pas que MainForm.vb existe
Est-ce possible ?
Comment "rétablir la communication" ?
"ArnaudG" wrote:
Il ne connait pas le type MainForm :
error BC30002: Type 'MainForm' is not defined
Il y a vraiment quelque chose qui m'échappe...
"Mathieu Francesch" wrote:
> Re,
>
> En créant un nouvel objet dans ton module qui fait référence à Maiform :
>
> Sub test()
> Dim MaMainForm As New MainForm
> MaMainForm.Label1.Text = "Test"
> End Sub
>
> Que ce passe t-il ?
... pour avancer un peu : j'ai l'impression que mon MainForm sait accéder à mon module, puisque les fonctions appelées fonctionnent, mais l'inverse n'est pas vrai :
module.vb ne sait pas que MainForm.vb existe
Est-ce possible ? Comment "rétablir la communication" ?
"ArnaudG" wrote:
Il ne connait pas le type MainForm :
error BC30002: Type 'MainForm' is not defined
Il y a vraiment quelque chose qui m'échappe...
"Mathieu Francesch" wrote:
> Re, > > En créant un nouvel objet dans ton module qui fait référence à Maiform : > > Sub test() > Dim MaMainForm As New MainForm > MaMainForm.Label1.Text = "Test" > End Sub > > Que ce passe t-il ?
ArlodVig
Je crois que j'ai le même problème
si je fais avec form1 la fenêtre principale
dans form2
Dim fform1 As New Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click fform1.Show() fform1.Label1.Text = "Maurice" End Sub
ça marche... mais évidemment cela ouvre une nouvelle fenêtre Form 1 Et ce n'est pas ce que je veux puisque je voudrais écrire dans la form1 principale
Bizarre que ce soit si compliqué dans vb.net alors que c'est si simple dans les précédentes versions
Maurice
Je crois que j'ai le même problème
si je fais avec form1 la fenêtre principale
dans form2
Dim fform1 As New Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
fform1.Show()
fform1.Label1.Text = "Maurice"
End Sub
ça marche... mais évidemment cela ouvre une nouvelle fenêtre Form 1
Et ce n'est pas ce que je veux puisque je voudrais écrire dans la form1
principale
Bizarre que ce soit si compliqué dans vb.net alors que c'est si simple dans
les précédentes versions
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click fform1.Show() fform1.Label1.Text = "Maurice" End Sub
ça marche... mais évidemment cela ouvre une nouvelle fenêtre Form 1 Et ce n'est pas ce que je veux puisque je voudrais écrire dans la form1 principale
Bizarre que ce soit si compliqué dans vb.net alors que c'est si simple dans les précédentes versions
Maurice
ArnaudG
Oui, c'est très tordu...
Ton cas ressemble pas mal à ce qui est traité dans ce post :
La procédure main() est dans mon MainForm, et je n'arrive pas à la déplacer dans le module, ça ne marche pas. Je pense que si j'arrivais à instancier MainForm depuis le module je pourrais faire ce que je veux, mais ... mon module ne veut pas entendre parler de MainForm.
Limite énervant tout ça...
"ArlodVig" wrote:
Je crois que j'ai le même problème
si je fais avec form1 la fenêtre principale
dans form2
Dim fform1 As New Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click fform1.Show() fform1.Label1.Text = "Maurice" End Sub
ça marche... mais évidemment cela ouvre une nouvelle fenêtre Form 1 Et ce n'est pas ce que je veux puisque je voudrais écrire dans la form1 principale
Bizarre que ce soit si compliqué dans vb.net alors que c'est si simple dans les précédentes versions
Maurice
Oui, c'est très tordu...
Ton cas ressemble pas mal à ce qui est traité dans ce post :
La procédure main() est dans mon MainForm, et je n'arrive pas à la déplacer
dans le module, ça ne marche pas. Je pense que si j'arrivais à instancier
MainForm depuis le module je pourrais faire ce que je veux, mais ... mon
module ne veut pas entendre parler de MainForm.
Limite énervant tout ça...
"ArlodVig" wrote:
Je crois que j'ai le même problème
si je fais avec form1 la fenêtre principale
dans form2
Dim fform1 As New Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
fform1.Show()
fform1.Label1.Text = "Maurice"
End Sub
ça marche... mais évidemment cela ouvre une nouvelle fenêtre Form 1
Et ce n'est pas ce que je veux puisque je voudrais écrire dans la form1
principale
Bizarre que ce soit si compliqué dans vb.net alors que c'est si simple dans
les précédentes versions
La procédure main() est dans mon MainForm, et je n'arrive pas à la déplacer dans le module, ça ne marche pas. Je pense que si j'arrivais à instancier MainForm depuis le module je pourrais faire ce que je veux, mais ... mon module ne veut pas entendre parler de MainForm.
Limite énervant tout ça...
"ArlodVig" wrote:
Je crois que j'ai le même problème
si je fais avec form1 la fenêtre principale
dans form2
Dim fform1 As New Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click fform1.Show() fform1.Label1.Text = "Maurice" End Sub
ça marche... mais évidemment cela ouvre une nouvelle fenêtre Form 1 Et ce n'est pas ce que je veux puisque je voudrais écrire dans la form1 principale
Bizarre que ce soit si compliqué dans vb.net alors que c'est si simple dans les précédentes versions
Maurice
ArlodVig
J'ai essayé la méthode préconisé qui semblait marché, mais chez moi cela ne marche pas
J'ai l'erreur
Une exception non gérée du type 'System.InvalidCastException' s'est produite dans WindowsApplication1.exe
Informations supplémentaires : Le cast spécifié n'est pas valide.
lorsque le ligne f = Form.ActiveForm
s'éxécute
Je crise !!!
Maurice
J'ai essayé la méthode préconisé qui semblait marché, mais chez moi cela ne
marche pas
J'ai l'erreur
Une exception non gérée du type 'System.InvalidCastException' s'est produite
dans WindowsApplication1.exe
Informations supplémentaires : Le cast spécifié n'est pas valide.
J'ai essayé la méthode préconisé qui semblait marché, mais chez moi cela ne marche pas
J'ai l'erreur
Une exception non gérée du type 'System.InvalidCastException' s'est produite dans WindowsApplication1.exe
Informations supplémentaires : Le cast spécifié n'est pas valide.
lorsque le ligne f = Form.ActiveForm
s'éxécute
Je crise !!!
Maurice
ArnaudG
Je compatis ! Je n'ai pas d'idée pour ton problème, je débute en VB...
Bon, concernant le mien, j'ai fait un gros copier/coller de mon module dans le code de mon MainForm et voilà, ça marche, c'est hyper dégueu, mais en attendant mieux, ça me permet d'avancer.
Je suis preneur si quelqu'un a une solution plus propre...
"ArlodVig" wrote:
J'ai essayé la méthode préconisé qui semblait marché, mais chez moi cela ne marche pas
J'ai l'erreur
Une exception non gérée du type 'System.InvalidCastException' s'est produite dans WindowsApplication1.exe
Informations supplémentaires : Le cast spécifié n'est pas valide.
lorsque le ligne f = Form.ActiveForm
s'éxécute
Je crise !!!
Maurice
Je compatis !
Je n'ai pas d'idée pour ton problème, je débute en VB...
Bon, concernant le mien, j'ai fait un gros copier/coller de mon module dans
le code de mon MainForm et voilà, ça marche, c'est hyper dégueu, mais en
attendant mieux, ça me permet d'avancer.
Je suis preneur si quelqu'un a une solution plus propre...
"ArlodVig" wrote:
J'ai essayé la méthode préconisé qui semblait marché, mais chez moi cela ne
marche pas
J'ai l'erreur
Une exception non gérée du type 'System.InvalidCastException' s'est produite
dans WindowsApplication1.exe
Informations supplémentaires : Le cast spécifié n'est pas valide.
Je compatis ! Je n'ai pas d'idée pour ton problème, je débute en VB...
Bon, concernant le mien, j'ai fait un gros copier/coller de mon module dans le code de mon MainForm et voilà, ça marche, c'est hyper dégueu, mais en attendant mieux, ça me permet d'avancer.
Je suis preneur si quelqu'un a une solution plus propre...
"ArlodVig" wrote:
J'ai essayé la méthode préconisé qui semblait marché, mais chez moi cela ne marche pas
J'ai l'erreur
Une exception non gérée du type 'System.InvalidCastException' s'est produite dans WindowsApplication1.exe
Informations supplémentaires : Le cast spécifié n'est pas valide.
lorsque le ligne f = Form.ActiveForm
s'éxécute
Je crise !!!
Maurice
ArlodVig
Arnaud,
J'ai trouvé une solution qui peux peut être t'aider
j'ai form1 : form principale
form2 fenetre secondaire
module1 un module vb
dans module 1 je déclare : Public main1 As form1
Dans sub form1_load
je mets
main1 = Me
et après dans les module ou dans les autres form j'ai accès à tout les contrôles et objet public de la forme principale par exemple
Main1.label1.text="toto"
et ça marche !!!
J'espère que cela peut t'aider
Maurice
Arnaud,
J'ai trouvé une solution qui peux peut être t'aider
j'ai form1 : form principale
form2 fenetre secondaire
module1 un module vb
dans module 1 je déclare :
Public main1 As form1
Dans sub form1_load
je mets
main1 = Me
et après dans les module ou dans les autres form j'ai accès à tout les
contrôles et objet public de la forme principale par exemple