Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : WithEvent [ Divers / Débutants ] (lispo)

dimanche 31 août 2008 à 12:41:22 | WithEvent

lispo



Bonjour a tous et a toutes,

Je me suis un peux égaré dans ma structure, s'il y aurais parmi vous un volontaire qui pourrais me re-guider sur la bonne route.
J'ai crée une classe :

Dans le module de classe  qui s'appelle (ObectClasse) se trouve cette structure
Private V_Rayon As Double
Private V_Centre As Variant
Public Cercle As AcadCircle
Public Event RayonChanger(ByVal valeur As Double)

Private Sub Class_Initialize()
MsgBox "Initialise"
End Sub
Private Sub Class_Terminate()
MsgBox "Distruction"
End Sub
Public Property Let Rayon(ByVal valeur As Double)
V_Rayon = valeur
RaiseEvent RayonChanger(V_Rayon)
End Property

Public Property Get Rayon() As Double
Rayon = V_Rayon
End Property
Public Property Let Centre(ByVal valeur As Variant)
V_Centre = valeur
End Property

Public Property Get Centre() As Variant
Centre = V_Centre
End Property

Function DrawCercle() As Object
Set Cercle = ThisDrawing.ModelSpace.AddCircle(Centre, Rayon)
Cercle.Update
End Function

Private Sub Cercle_RayonChanger()
MsgBox "Le Rayon a changé!!!"
End Sub

Dans le module courrant se trouve ce-ci
Option Explicit
Public Cercle As New ObjectClasse
Public Sub EraClasse()
Dim pt1 As Variant
pt1 = ThisDrawing.Utility.GetPoint(, "Pts")
Cercle.Centre = pt1
Cercle.Rayon = 100#
Cercle.DrawCercle
End Sub
J'ai 2 probleme!!
N°1:
Le msgbox dans( Class_Terminate) n'apparais pas?
N°2:
Quand je modifie le rayon le msgbox dans (Cercle_RayonChanger) n'apparais pas?

le (WithEvents) il va dans quel module?


dimanche 31 août 2008 à 14:32:23 | Re : WithEvent

PCPT

Administrateur CodeS-SourceS
salut,

seuls :
ThisDrawing.ModelSpace.AddCircle(Centre, Rayon)
et
pt1 = ThisDrawing.Utility.GetPoint(, "Pts")

peuvent faire penser à du DotNet
tout le reste ressemble bien trop à VB6....

sauf erreur de ma part (possible!!), les property contiennent le Get et Set dans la même property, et le LET disparaît

de plus ce n'est pas
Public Cercle As New ObjectClasse
mais
Public withevents Cercle As ObjectClasse

ensuite il faut initialiser
(nb : pourquoi PUBLIC ?)

ton code semble être un mic mac de choses trouvées à droite à gauche, c'est incompréhensible...

Prenez un instant pour répondre à ce sondage svp  

lundi 1 septembre 2008 à 03:29:04 | Re : WithEvent

Renfield

Administrateur CodeS-SourceS
une tentative de rectification:

Private mnRayon As Double
Public Centre As Variant
Private moCercle As AcadCircle
Public Event RayonChanged(ByVal valeur As Double)

Private Sub Class_Initialize()
    MsgBox "Initialize"
End Sub

Private Sub Class_Terminate()
    MsgBox "Destruction"
End Sub

Public Property Let Rayon(ByVal Value As Double)
    mnRayon = Value
    RaiseEvent RayonChanged(Value)
End Property

Public Property Get Rayon() As Double
    Rayon = mnRayon
End Property

Public Property Get Cercle() As AcadCircle
    Set Cercle = moCercle
End Property

Public Function DrawCercle() As Object
    Set moCercle= ThisDrawing.ModelSpace.AddCircle(Centre, Rayon)
    moCercle.Update
    Set DrawCercle = moCercle
End Function

et dans le module standard:


Option Explicit

Public WithEvents Cercle As ObjectClasse

Public Sub EraClasse()
    Set Cercle = New ObjectClasse  '# a placer ou tu veux, au final...
    Cercle.Centre = ThisDrawing.Utility.GetPoint(, "Pts")
    Cercle.Rayon = 100#
    Cercle.DrawCercle
End Sub

Private Sub Cercle_RayonChanger()
    MsgBox "Le Rayon a changé!!!"
End Sub

Renfield
Admin CodeS-SourceS- MVP Visual Basic

lundi 1 septembre 2008 à 19:31:17 | Re : WithEvent

lispo

salut renfiel,
il bloque sur "Public WithEvents Cercle As ObjectClasse"
il le met en rouge?




Cette discussion est classé dans : centre, property, msgbox, cercle, rayon


Répondre à ce message

Sujets en rapport avec ce message

Equation pour ligne et cercle - Algorithme ? [ par jmlucienvb ] Quelle est la meilleure méthode pour tracer un cercle dont on connait les coordonnées du centre et le rayon, sachant qu"après on doit balayer tout l'i withEvents [ par lispo ] Bonjour a tous,J 'ai crée une classe cercle(Vba AutoCad)mais je voudrais lui attribuer un evenement(ex: apparition d'un msgbox)voila comment j'ai fait Question en Visual Basic 6.0 [ par Fernando81 ] Salut, <p class="MsoNo Dessiner un arc sans connaitre le centre du cercle [ par JohnBug ] Bonjour à tous,   Je dois construire une appli dans laquelle l'usagé peut dessiner des tracés sur une feuille à partir de coordonnées entrées au clavi Cercle d'abscisse et d'ordonnée définis [ par CrisseTof ] Bonjour,J'aimerais créer un cercle dont le centre à pour coordonnées un abscisse et une ordonnée que j'ai rentrés dans une inputbox.Est-ce que quelqu' Centre Cercle tangeant à 2 droite [ par Remiguel ] 1) J'essaie de trouver les coordonnées du centre d'un cercle tangeant à 2 droites. Je connais 3 points apartenant sur les deux droites dont un est com Question en Visual Basic 6.0 [ par Fernando81 ] Salut, qui peut me répondre à ma question en Visual Basic? Je suis étudiant dans le domaine de la technique électrique et je m'appelle Fernando. Je fa Arc de cercle avec deux points et le centre [ par benbedo ] Bonjour, juste une question graphique de base, comment faire pour tracer un arc de cercle à partir des deux point extrêmes et du centre du cercle, sac Creer un cercle et un rayon [ par dodineau ] Bonjour,Je fais un prog en vb.net et je n'arrive pas à creer un cercle et son rayon.Je m'explique mon programme va me donner un résultat entre 0 et 35 afficher image dans page html avec script vbs [ par flopad ] Bonjour, j'ai le code suivant et je souhaiterais afficher une image gif à la place de la MsgBox. Est ce faisable???Merci beaucoup! dim wshShellset wsh


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,624 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.