Déclencher une sub avec arguments à partir d'un évenement click [Résolu]

Signaler
Messages postés
4
Date d'inscription
jeudi 2 juillet 2009
Statut
Membre
Dernière intervention
23 juillet 2009
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonjour

Je souhaiterais déclencher la sub RempliCol(a,b) à partir d'un évenement double click souris.

    Private Sub DG_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DG.DoubleClick
        RempliCol(a, b)
    End Sub


L'évenement est bien détecté, mais évidement j'ai une erreur puisque les paramètres a et b ne sont pas déclarés.
Ils sont biensur déclarés et affectés en amont du programme.

Et hélas déclarer les paramètres a et b dans la sub évenement DG_DoubleClick n'est pas possible.

Merci beaucoup si vous voyez une solution ^^

6 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
37
il ne faut pas changer la portée (private / public) de Form1
ce qui est déclaré dans une sub reste propre à cette sub


Public Class Form1

    'déclaration privée mais générale, accessible par chaque élément de Form1
    Dim a As Integer
    Dim b As String

    '--- S'exécute au lancement du programme
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        a = 1
        b = "test"
    End Sub

    Private Sub DG_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DG.DoubleClick
        'ma sub RempliCol est dans un module sur un autre fichier.vb du projet 
        RempliCol(a, b)
    End Sub

End Class


++
Messages postés
4
Date d'inscription
jeudi 2 juillet 2009
Statut
Membre
Dernière intervention
23 juillet 2009

"Et hélas déclarer les paramètres a et b dans la sub évenement DG_DoubleClick n'est pas possible."

Je parlais biensur de ne pas les redéclarer pour éviter de perdre leur valeur ^^

(je n'ai pas trouver la fonction éditer du forum ^^ )

Bonne soirée
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
37
salut,

mais évidement j'ai une erreur
-> laquelle?
tu parles de variables non déclarées, mais si elles sont déclarées et affectées en amont... c'est qu'elles sont déclarées

donc, quelle est la question? :)
quelle est l'erreur?
a et b déclarées où exactement et de quel type?

[hr]
Messages postés
4
Date d'inscription
jeudi 2 juillet 2009
Statut
Membre
Dernière intervention
23 juillet 2009

Bonsoir,

Dans ma sub :
    Private Sub DG_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DG.DoubleClick

        RempliCol(a, b)

    End Sub

j'ai l'erreur :
"Le nom 'a' n'est pas déclaré"
"le nom 'b' n'est pas déclaré"

a est un integer, b est un string, déclarés et utilisés dans une "public sub" qui s'exécute au lancement du programme (Public Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load)

Tout ceci dans mon form1.vb

La question, c'est que j'aimerais exécuter ma sub remplicol(a,b) lors du double_click, mais je ne sais pas faire passer les paramètres a et b pour "nourrir" l'appel à ma sub RempliCol, enfermée dans la sub DG_DoubleClick.

Pour résumer, mon code ressemble à ça :


Public Class Form1

    '--- S'exécute au lancement du programme
    Public Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
dim a as integer
dim b as string

a=1
b="test"
    End Sub


    Private Sub DG_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DG.DoubleClick

        RempliCol(a, b)              'ma sub RempliCol est dans un module sur un autre fichier.vb du projet "

    End Sub

End Class



J'espère que c'est plus clair^^ mais vu le fait que je ne trouve aucune personne confrontée à ce problème sur internet, je crois que je n'ai pas tout saisi à la programmation vb.net ^^

Merci !
Messages postés
4
Date d'inscription
jeudi 2 juillet 2009
Statut
Membre
Dernière intervention
23 juillet 2009

Merci beaucoup, c'est vraiment la base de la programmation, j'ai presque honte d'avoir buté sur cette évidence tout une après midi ^^

Très bonne soirée :)
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
37
c'est en forgeant...

bonne soirée