On Error

cs_Xneo Messages postés 48 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 18 janvier 2007 - 9 avril 2005 à 23:55
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 10 avril 2005 à 19:02
Voila jvous explique mon cas! je fais une classe en VB6.0 avec quelque méthodes! je dois traiter des exceptions pour chacune de ces méthodes mais le traitement en cas derreur à lancer est le meme pour toute les méthodes.
Alors au liieu de faire des copier collé pour chaque méthode je voulais savoir s'il y avait pas une solution pour faire une seule et meme étiquette de tratement derreur pour ttes ces méthodes ! merciiii

1 réponse

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
10 avril 2005 à 19:02
Salut
Non, les Labels désignés par le "On Error Goto" doivent être internes à la procédure.

Ce que tu peux faire, c'est créer une Sub dans la classe que tu appelles juste derrière chaque Label d'erreur de chaque méthode :
Call GestionErreur

Pas forcement ce dont tu as besoin, mais tu peux aussi ajouter un evènement à ta Classe :
Dans la Déclaration, ajoute :
Public Event Erreur(sDescription As String)
Tu mets autant de paramètres que tu le veux, selon tes besoins
Dans ta classe, quand tu voudras transmettre des infos au programme utilisant ta Classe, il te suffit de faire :
RaiseEvent Erreur("Le texte que j'envoie qui explique l'erreur")
Par exemple :
RaiseEvent Erreur("Erreur " & CStr(Err.Number) & " dans la procédure 'Titine' : " & Err.Description)

Dans le programme dans lequel tu utilises cette classe, dimensionnes ton instance comme ça :
Private WithEvents MonInstance As clsMaClasse
Si tu mets ça, tu verras 'MonInstance' apparaitre dans la liste des controles (dans la page de code) et sont évènement 'Erreur' qui te fournira une chaine de caractères.
Ce qui est intéressant, c'est de centraliser le retour d'info, tu pourras ainsi faire une procédure unique de gestion de l'affichage de l'erreur.
A toi de voir quoi en faire ... une simple MsgBox, dans une StatusBar ou dans un fichier Log ...

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
0
Rejoignez-nous