OVH Cloud OVH Cloud

OCX et property...

3 réponses
Avatar
ng
Bonjour,

Je viens de faire un petit OCX...

Mais pour le terminer complétement il me faut définir les proriétés
BackColor et Font (entre autres...)

Pour ce qui est de la BackColor, comme déclarer la property pour pouvoir
choisir les couleurs dans l'ide correctement comme le BackColor d'une form
par exemple, j'ai bien essayé as colorconstants mais je n'obtiens pas le
résultat attendu...

Idem pour le Font qui doit être un object, comment spéficier à VB qu'il
s'agit d'une propriété font ?

J'ai aussi une propriété BorderStyle, pour cela j'utilise un enum défini
dans un module mais ca plante, comment faire ?

Sinon si je définis une propriété au moment du design-time, elle se remet à
la valeur par défaut au moment du run-time... comment faire ?


Merci beaucoup d'avance !

Nicolas.

3 réponses

Avatar
François Picalausa
Bonjour/soir,

ng wrote:
comme déclarer la property pour
pouvoir choisir les couleurs dans l'ide correctement comme le
BackColor d'une form par exemple



Essaye As OLE_COLOR

Idem pour le Font qui doit être un object, comment spéficier à VB
qu'il s'agit d'une propriété font ?



As Font

J'ai aussi une propriété BorderStyle, pour cela j'utilise un enum
défini dans un module mais ca plante, comment faire ?



'Dans un module
Public Enum Toto2
d
e
f
End Enum

'Dans un UserControl:
Option Explicit

Enum Toto
a
b
c
End Enum

Property Get TotoProp() As Toto
End Property

Property Let TotoProp(NewValue As Toto)
End Property

Property Get Toto2Prop() As Toto2
End Property

Property Let Toto2Prop(NewValue As Toto2)
End Property

Ici, ça fonctionne parfaitement!


Sinon si je définis une propriété au moment du design-time, elle se
remet à la valeur par défaut au moment du run-time... comment faire ?



Regarde du côté du propertybag

Duex événements y sont associés:
Read et Write Poperties

Je te conseille aussi l'Assistant Interface de contrôles ActiveX VB6... il
te génère des propriétés tout seul

--
François Picalausa (MVP VB)
FAQ VB : http://faq.vb.free.fr
MSDN : http://msdn.microsoft.com
Avatar
Ledev
"ng" a écrit dans le message de
news:udo$L$
Bonjour,

Je viens de faire un petit OCX...

Mais pour le terminer complétement il me faut définir les proriétés
BackColor et Font (entre autres...)

Pour ce qui est de la BackColor, comme déclarer la property pour pouvoir
choisir les couleurs dans l'ide correctement comme le BackColor d'une form
par exemple, j'ai bien essayé as colorconstants mais je n'obtiens pas le
résultat attendu...



Suffit que la propriété soit de type OLE_COLOR

Idem pour le Font qui doit être un object, comment spéficier à VB qu'il
s'agit d'une propriété font ?



se coût si, c'est stdFont


J'ai aussi une propriété BorderStyle, pour cela j'utilise un enum défini
dans un module mais ca plante, comment faire ?



L'énum est bien Public?
Quelle est l'erreur?

Sinon si je définis une propriété au moment du design-time, elle se remet


à
la valeur par défaut au moment du run-time... comment faire ?



Dans le contrôle, vous devez avoir un évenement WriteProperties, utilisée
dedans la methode WriteProperty pour enregistrer la valeur de la propriété.
Sans sa, elle reviendra éffectivement a sa valeur par défault



Merci beaucoup d'avance !



De rien
a+
Avatar
ng
Merci à tous les deux !

je vais voir ca ;-)

Nicolas.

"ng" a écrit dans le message de news:
udo$L$
Bonjour,

Je viens de faire un petit OCX...

Mais pour le terminer complétement il me faut définir les proriétés
BackColor et Font (entre autres...)

Pour ce qui est de la BackColor, comme déclarer la property pour pouvoir
choisir les couleurs dans l'ide correctement comme le BackColor d'une form
par exemple, j'ai bien essayé as colorconstants mais je n'obtiens pas le
résultat attendu...

Idem pour le Font qui doit être un object, comment spéficier à VB qu'il
s'agit d'une propriété font ?

J'ai aussi une propriété BorderStyle, pour cela j'utilise un enum défini
dans un module mais ca plante, comment faire ?

Sinon si je définis une propriété au moment du design-time, elle se remet


à
la valeur par défaut au moment du run-time... comment faire ?


Merci beaucoup d'avance !

Nicolas.