Appel d'une sub d'un projet visual studio
Fermé
justin14
Messages postés
107
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
9 juin 2017
-
21 avril 2016 à 18:12
Utilisateur anonyme - 26 avril 2016 à 18:20
Utilisateur anonyme - 26 avril 2016 à 18:20
A voir également:
- Appel d'une sub d'un projet visual studio
- Appel inconnu - Guide
- Nommez une application d'appel vidéo ou de visioconférence - Guide
- Microsoft visual c++ runtime - Guide
- Telecharger fl studio 20 pour pc gratuit complet - Télécharger - Édition & Montage
- Visual paradigm - Télécharger - Gestion de données
8 réponses
Utilisateur anonyme
Modifié par Whismeril le 21/04/2016 à 20:27
Modifié par Whismeril le 21/04/2016 à 20:27
Bonsoir
Tu mélanges tout.
Maintenant, peux tu décrire de façon compréhensible ta demande?
Quand j'étais petit, la mer Morte n'était que malade.
George Burns
Je dispose de plusieur solutions .vb dans mon explorateur de solution de mon projet et chacune réalise quelquechose de spécifique.
Comment faire pour appeler l'une de ces solutions (appeler un Namespace) depuis le corps d'une autre solution qui s'exécutera ?
Tu mélanges tout.
- Un fichier .vb est un fichier de code qui peut contenir plein de choses
- Un espaces de nom est un environnement qui contient du code (en général des classes) qui ont le même thème. System.IO par exemple contient des outils de gestion du disque (fichiers, répertoires, etc.....), ces codes sont répartis dans plusieurs fichiers .vb, voire plusieurs projets
- Un projet regroupe des fichiers de code pour en faire une dll, un programme, un site, etc...
- Une solution regroupe des solutions pour faire une application utilisant plusieurs projets.
Maintenant, peux tu décrire de façon compréhensible ta demande?
Quand j'étais petit, la mer Morte n'était que malade.
George Burns
justin14
Messages postés
107
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
9 juin 2017
1
Modifié par justin14 le 22/04/2016 à 08:53
Modifié par justin14 le 22/04/2016 à 08:53
Bonjour,
C'est vrai que ce n'est pas très clair, tes explications m'éclaire beaucoup.
Je joins ci-dessous un screen schématisant mon problème :![](https://img-19.ccm2.net/Dtc_3osVz90UDNPkM8isGlFX2ao=/440x/2cd8c409665e49ccb8343293556587fc/ccm-ugc/Em9EQfKlvjLPcodgsUC6qFTrQ-sans-titre.png)
Je travaille sur un projet "RevitAddinRY". Je souhaite lancer la public class contenue dans ''Class2.vb'' depuis une sub dans ''AdskApplication.vb''.
J'espère être plus clair comme ça, mais c'est vrai que cette gymnastique reste encore assez confuse pour moi.
Merci pour votre aide
C'est vrai que ce n'est pas très clair, tes explications m'éclaire beaucoup.
Je joins ci-dessous un screen schématisant mon problème :
![](https://img-19.ccm2.net/Dtc_3osVz90UDNPkM8isGlFX2ao=/440x/2cd8c409665e49ccb8343293556587fc/ccm-ugc/Em9EQfKlvjLPcodgsUC6qFTrQ-sans-titre.png)
Je travaille sur un projet "RevitAddinRY". Je souhaite lancer la public class contenue dans ''Class2.vb'' depuis une sub dans ''AdskApplication.vb''.
J'espère être plus clair comme ça, mais c'est vrai que cette gymnastique reste encore assez confuse pour moi.
Merci pour votre aide
Utilisateur anonyme
22 avril 2016 à 09:01
22 avril 2016 à 09:01
En supposant que la classe contenue dans Class2 s'appelle Class2:
ensuite avec la variable maClass2 tu as accès aux méthodes et au propriétés.
Je te conseille vivement la lecture (en entier) de ce cours
https://plasserre.developpez.com/cours/vb-net/
Dim maClass2 As New Class2()
ensuite avec la variable maClass2 tu as accès aux méthodes et au propriétés.
Je te conseille vivement la lecture (en entier) de ce cours
https://plasserre.developpez.com/cours/vb-net/
justin14
Messages postés
107
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
9 juin 2017
1
26 avril 2016 à 11:37
26 avril 2016 à 11:37
Merci pour le cours. J'ai des erreur mais je pense compliqué de les résoudres sans connaitre les paramètres du projet.
Je vais approndir mes bases.
Sincèrement,
Justin
Je vais approndir mes bases.
Sincèrement,
Justin
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
justin14
Messages postés
107
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
9 juin 2017
1
26 avril 2016 à 16:35
26 avril 2016 à 16:35
Bonjour,
Après de nombreuses recherches je n'arrive pas à me débloquer.
Ci dessous un imprime écran résumant mon problème.![](https://img-19.ccm2.net/VCwA_iF-EMtlCX9dsRB_rAQh02E=/440x/f29575a49759485e914182e85a090f62/ccm-ugc/fKAGSRKpsyEBsEZAsgIfeA0TE9qOxC-error.png)
A l'encadré 1 on voit la class que je voudrais appeler 'Public Class UserForm' dans l'onglet Class2.vb.
A l'encadré 2 on voit l'endroit où je souhaite appeler la class avec mon essai :
A l'encadré 3 l'erreur que j'ai quand je renseinge les arguments et à l'encadré 4 quand je ne les renseigne pas.
Je n'arrive vraiment pas à avancer. J'espère vous avoir donner assez d'éléments pour que vous puissiez m'éclairer.
Merci d'avance pour votre aide,
Cordialement,
Justin
Après de nombreuses recherches je n'arrive pas à me débloquer.
Ci dessous un imprime écran résumant mon problème.
![](https://img-19.ccm2.net/VCwA_iF-EMtlCX9dsRB_rAQh02E=/440x/f29575a49759485e914182e85a090f62/ccm-ugc/fKAGSRKpsyEBsEZAsgIfeA0TE9qOxC-error.png)
A l'encadré 1 on voit la class que je voudrais appeler 'Public Class UserForm' dans l'onglet Class2.vb.
A l'encadré 2 on voit l'endroit où je souhaite appeler la class avec mon essai :
Dim CallUserForm As New UserForm
CallUserForm.Execute()
A l'encadré 3 l'erreur que j'ai quand je renseinge les arguments et à l'encadré 4 quand je ne les renseigne pas.
Je n'arrive vraiment pas à avancer. J'espère vous avoir donner assez d'éléments pour que vous puissiez m'éclairer.
Merci d'avance pour votre aide,
Cordialement,
Justin
Utilisateur anonyme
26 avril 2016 à 16:51
26 avril 2016 à 16:51
Tu peux poster le code plutôt que des impressions d'écran.
justin14
Messages postés
107
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
9 juin 2017
1
26 avril 2016 à 17:03
26 avril 2016 à 17:03
Encadré 1
Encadreé 2
<Transaction(TransactionMode.Manual)>
Public Class UserForm
Implements IExternalCommand
Public Function Execute(
ByVal commandData As ExternalCommandData,
ByRef message As String,
ByVal elements As Autodesk.Revit.DB.ElementSet) _
As Result Implements IExternalCommand.Execute
''.....Suite du code
Encadreé 2
Sub ComponentManager_UIElementActivated(sender As Object, e As adWin.UIElementActivatedEventArgs)
If e IsNot Nothing AndAlso e.Item IsNot Nothing AndAlso e.Item.Id IsNot Nothing AndAlso e.Item.Id = "ID_SD_BUTTON" Then
Dim CallUserForm As New UserForm
CallUserForm.Execute(
ByVal commandData As ExternalCommandData,
ByRef message As String,
ByVal elements As Autodesk.Revit.DB.ElementSet)
End If
End Sub
Utilisateur anonyme
26 avril 2016 à 18:20
26 avril 2016 à 18:20
Je vois que tu n'as pas fait l'effort de lire correctement le cours.....
Il y a un endroit ou on déclare une méthode, dans à cet endroit, on lui donne un nom, on dit si elle retourne un résultat (Function) ou pas (Sub) et on définit les éventuels paramètres, la façon dont il sont passés (par défaut selon le type ou forcé par valeur ou par référence), le nom qu'aura le paramètre dans la méthode et son type.
C'est ce que tu as fait dans le premier encadré.
Ensuite ailleurs on ce sert de cette méthode,
Par exemple, pour le calcul du cosinus
je ne me soucis pas de savoir le mode de transmission, ni de préciser que 1 est un entier.
Et je ne répondrais plus à rien qui se trouve assez clairement expliqué dans le cours.
Il y a un endroit ou on déclare une méthode, dans à cet endroit, on lui donne un nom, on dit si elle retourne un résultat (Function) ou pas (Sub) et on définit les éventuels paramètres, la façon dont il sont passés (par défaut selon le type ou forcé par valeur ou par référence), le nom qu'aura le paramètre dans la méthode et son type.
C'est ce que tu as fait dans le premier encadré.
Ensuite ailleurs on ce sert de cette méthode,
- on l'appelle par son nom, OK
- on lui donne ses éventuels paramètres, par le biais de valeurs ou de variables dont le type sera compatible (et qui ont un nom propre par forcement le même) , pas OK.
Par exemple, pour le calcul du cosinus
cos = Math.Cos(1)
je ne me soucis pas de savoir le mode de transmission, ni de préciser que 1 est un entier.
Et je ne répondrais plus à rien qui se trouve assez clairement expliqué dans le cours.