GOTO entre 2 private sub ?

Le
New Faz
Bonjour, je souhaiterais faire une chose en VB 6 pour différentes raison,
le bout de code correspond a ca en gros :-))

''''''''''''
private sub machin_click()

Label1:
--code--

End sub


private sub truc_Click

--code--

GOTO Label1

End sub
'''''''''''''''''''''''
mais le prob c'est que ca marche pas :'-(
Si qq'un savait comment on peut faire un truc comme ca, ca m'arrangerait
bien je dois dire :-)

Merci d'avance
NF

--
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
progo
Le #14820321
Pourquoi ne met-tu pas une fonction dans un module et au lieu de "goto
label1" , tu mets "call fctmachin"...



"New Faz" a écrit dans le message de
news:409c0e9e$0$17918$
Bonjour, je souhaiterais faire une chose en VB 6 pour différentes raison,
le bout de code correspond a ca en gros :-))

''''''''''''
private sub machin_click()

Label1:
-----code-----

End sub


private sub truc_Click

-----code-----

GOTO Label1

End sub
'''''''''''''''''''''''
mais le prob c'est que ca marche pas :'-(
Si qq'un savait comment on peut faire un truc comme ca, ca m'arrangerait
bien je dois dire :-)

Merci d'avance
NF

--





François Picalausa
Le #14820311
Hello,

Tu as au moins deux possibilités pour palier à ce problème.
1°):
private sub machin_click()
ClickCommon
End sub

private sub truc_Click
'Code
ClickCommon
End sub

Private Sub ClickCommon()
'Commun aux deux procédures
End Sub

2°) l'utilisation d'un argument (possible si la procédure n'est *pas* un
événement):
Private Enum PartsToExecute
FirstPart = 1
SecondPart = 2
ThirdPart = 4
End Enum

Private Sub MyProc(Parts As PartsToExecute) 'Changer le type
'Une partie d'initialisation?
If Parts And FirstPart Then
'Exécuter la première partie du code
End If
'Une partie commune?
If Parts And SecondPart Then
'Il faut la seconde partie du code
End If
...
End Sub

--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net

"New Faz" a écrit dans le message de
news:409c0e9e$0$17918$
Bonjour, je souhaiterais faire une chose en VB 6 pour différentes
raison, le bout de code correspond a ca en gros :-))

''''''''''''
private sub machin_click()

Label1:
-----code-----

End sub


private sub truc_Click

-----code-----

GOTO Label1

End sub
'''''''''''''''''''''''
mais le prob c'est que ca marche pas :'-(
Si qq'un savait comment on peut faire un truc comme ca, ca
m'arrangerait bien je dois dire :-)

Merci d'avance
NF


www.eztree-msdn.com \(Laurent Jordi\) Enlever le s à infos pour me contacter par mail
Le #14820301
Salut !

ARGLLLLLLLLLL ! t barj ou koi ? Oublie le GOTO !!! Sauf dans certertains cas
pour optimiser la vitesse des boucles et encore uniquement dans une même
procédure et uniquement si ton programme ne devra pas migrer vers dot net...
En plus, losques tu es dans une Sub ou une fonction, tu es dans une boîte
hermétique au GOTO (heureusement)...

Tu dois suivre les conseils qui t'on été donné par progo ou françois... Mais
tu dois surtout essayer de comprendre la nature de la programmation
procédurale qui a été inventée pour tuer le Goto...

En plus les instructions goto et gosub ont été érradiquées des langages
actuels (dotNet) si tu utilises des Goto, tu auras beaucoup de mal pour
faire évoluer tes programmes vers ce nouvel environnement de dev...

@+

LJ
www.eztree-msdn.com
www.ezlogic.mc


"New Faz" a écrit dans le message de
news:409c0e9e$0$17918$
Bonjour, je souhaiterais faire une chose en VB 6 pour différentes raison,
le bout de code correspond a ca en gros :-))

''''''''''''
private sub machin_click()

Label1:
-----code-----

End sub


private sub truc_Click

-----code-----

GOTO Label1

End sub
'''''''''''''''''''''''
mais le prob c'est que ca marche pas :'-(
Si qq'un savait comment on peut faire un truc comme ca, ca m'arrangerait
bien je dois dire :-)

Merci d'avance
NF

--





New Faz
Le #14820291
Merci a tous les 3 pour vos réponse, je vais essayer tout ca :-)

Je tenais a savoir comment faire dans ce sens tout de meme, et j'avais pensé
au module (mais apres le post %-))
donc, je vais essayer la methode la plus simple dans un premier temps, et le
module juste apres ;-) car j'avoue, Honte sur moi, ne pas avoir pensé a la
"migration .net"...mais c'est noté ;-)

Merci encore :)

@+
NF





"New Faz" a écrit dans le message de
news:409c0e9e$0$17918$
Bonjour, je souhaiterais faire une chose en VB 6 pour différentes raison,
le bout de code correspond a ca en gros :-))

''''''''''''
private sub machin_click()

Label1:
-----code-----

End sub


private sub truc_Click

-----code-----

GOTO Label1

End sub
'''''''''''''''''''''''
mais le prob c'est que ca marche pas :'-(
Si qq'un savait comment on peut faire un truc comme ca, ca m'arrangerait
bien je dois dire :-)

Merci d'avance
NF

--





Publicité
Poster une réponse
Anonyme