Pourquoi mon Button ne fonctionne pas

ciginfo

Well-Known Member
Licensed User
Longtime User
Bonjour
Merci à l'âme charitable qui peut m'expliquer pourquoi dans l'exemple ci joint l'action sur le bouton "BtnDecla" situé sur l'écran3 ne fonctionne pas.
Merci bien FD
 

Attachments

  • Button.zip
    8.1 KB · Views: 156

klaus

Expert
Licensed User
Longtime User
Il faut remplacer la ligne 64
BtnDecla.Initialize("")

par celle-ci.
BtnDecla.Initialize("BtnDecla")

BtnDecla est le nom pour l'évènement (event) BtnDecla_Click.

Il faudra faire les mêmes changements pour les autres objets pour lesquels tu utilises les évènements.

Meilleures salutations.
 
Upvote 0

ciginfo

Well-Known Member
Licensed User
Longtime User
Merci, justement je n'avais pas très bien compris quand faut t'il donner un nom ou pas lorsqu'on initialise un objet.
Donc si j'ai bien compris, on peut ne pas nommer Initialise("") sauf si l'objet peut engendrer un évènement. Est ce que le nom donné à l'initialisation doit être le même que celui de l'objet obligatoirement?
FD
 
Upvote 0

klaus

Expert
Licensed User
Longtime User
Pour clarifier le sujet, 4 exemples:

lblTest.Initialize("")
Aucune routine évènement possible!
Pour des Labels par exemple.

btnTest.Initialize("btnTest")
Le nom générique pour les routines évènement est btnTest.
Sub btnTest_Click

btnTest.Initialize("ButtonTest")
Le nom générique pour les routines évènement est ButtonTest.
Sub ButtonTest_Click
Le nom générique des routines évènement peut être différent du nom de l'objet.

btnTest1.Initialize("btnTest")
btnTest1.Tag = 1
btnTest2.Initialize("btnTest")
btnTest2.Tag = 2
btnTest3.Initialize("btnTest")
btnTest3.Tag = 3
Le nom générique pour les routines évènement des trois boutons est
btnTest.

Sub btnTest_Click
Dim btn As Button
btn = Sender
Select btn.Tag
Case1
...
Case2
...
Case3
...
EndSelect

On peut aussi donner un même nom générique de routine pour plusieurs objets. Dans ce cas if faut utiliser Sender pour déterminer quel objet a provoqué l'évènement.

ATTENTION: Si l'objet est défini dans un fichier layout il ne faut pas initialiser l'objet.

Meilleures salutations.
 
Upvote 0
Top