Variable public

Résolu
damdam2801 Messages postés 15 Date d'inscription mercredi 6 décembre 2000 Statut Membre Dernière intervention 12 avril 2008 - 30 mars 2008 à 18:37
damdam2801 Messages postés 15 Date d'inscription mercredi 6 décembre 2000 Statut Membre Dernière intervention 12 avril 2008 - 30 mars 2008 à 23:26
Bonjour a tous voilà j' ai parcourus le forum, les tutos et le site de long en marge et en travers sans réussir a résoudre mon problème...
je voudrais faire une variable qui s'applique a une forme entière (ici la variable a) voici mon code :
Public Class Form1
    Public a As String
.                                                                                                                                .

    Public Sub bouttonrouge_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bouttonrouge.Click
        a = a + 1
    End Sub
.                                                                                                                                  .
    Public Sub form1()

        If a = 1 Then
            PictureBox3.Image = list.Images(1)
            PictureBox3.Visible = True

        End If
    End Sub

End Class

seulement quand je clic sur le bouttonrouge le if de public sub form 1() ne s'execute pas pourriez vous m'aider
merci

9 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
30 mars 2008 à 20:58
C'est une nouvelle methode qui sert à factoriser les appels à son contenu
que pour ces derniers soit appelé depuis le constructeur (form1)
ou depuis le click sur le bouton

Mais l'appel à partir du form1 est inutile car normalement a = 0.

Cycle de vide de ton appli

initialisation variable globale a = 0
constructeur
appel newmathode - mais rien est fait car a = 0

pas d'appel au constructeur (form1)
clic bouton --> a = 1
appel newmethode - travail car a = 1

deuxieme click bouton --> a=2
appel newmethode --> pas de travail car a = 2

C'est pas compliqué
3
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
30 mars 2008 à 19:29
salut,


Vaudrait mieux typer ta variable en integer vu comment tu t'en sers.

Et n'oublies pas de l'initialiser avant de faire a=a+1

L'expérience, c'est une connerie par jour, mais jamais la même..
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
30 mars 2008 à 19:36
Salut

Pour completer
le if dans le constructeur de la form et donc pas aller sur le clic du boutonrouge.

En plus initialise ta variable
Public a As Integer =0

De plus encapsule ton champs dans une propriété ou mais le en private, plus propre.

Bon coding
0
damdam2801 Messages postés 15 Date d'inscription mercredi 6 décembre 2000 Statut Membre Dernière intervention 12 avril 2008
30 mars 2008 à 20:07
comment ça initialiser la variable??
0

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

Posez votre question
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
30 mars 2008 à 20:22
Tu la mets à zéro comme dans la ligne en bleue
0
damdam2801 Messages postés 15 Date d'inscription mercredi 6 décembre 2000 Statut Membre Dernière intervention 12 avril 2008
30 mars 2008 à 20:26
excuse moi mais je débute en programation...
pourrais tu s'il te plait me montrer ce que tu veux me dire dans mon code s'il te plait

merci

Public Class Form1
    Public a As String
.                                                                                                                               
.

    Public Sub bouttonrouge_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bouttonrouge.Click
        a = a + 1
    End Sub
.                                                                                                                                 
.
    Public Sub form1()

        If a = 1 Then
            PictureBox3.Image = list.Images(1)
            PictureBox3.Visible = True

        End If
    End Sub

End Class
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
30 mars 2008 à 20:31
Voila un code

Public Class Form1

    Private a As Integer = 0
.                                                                                                                               
.

    Public Sub bouttonrouge_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bouttonrouge.Click
        a = a + 1
    manewmathode()
    End Sub
.         
  private sub manewmathode()
   If a = 1 Then

            PictureBox3.Image = list.Images(1)

            PictureBox3.Visible = True

        End If
end sub
                                                                                                                       
.
    Public Sub form1()
       manewmathode()
    
    End Sub

End Class
0
damdam2801 Messages postés 15 Date d'inscription mercredi 6 décembre 2000 Statut Membre Dernière intervention 12 avril 2008
30 mars 2008 à 20:38
Merci !!!!!! Ca marche !!
Mais je ne comprends pas a quoi sert le:  manewmathode() en desous de a =a+1

et le

Public Sub form1()
        manewmathode()

    End Sub
0
damdam2801 Messages postés 15 Date d'inscription mercredi 6 décembre 2000 Statut Membre Dernière intervention 12 avril 2008
30 mars 2008 à 23:26
ok merci de ton aide!
0
Rejoignez-nous