IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Controle ActiveX : propriété de type Collection


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Par défaut Controle ActiveX : propriété de type Collection
    Bonjour,

    Je veux developper un controle activeX qui possède des propriétés objet (exemple : voir le control TabTrip de Microsoft, propriété Tabs)

    comment utiliser les methodes Readproperties et WriteProperties pour que, après avoir ajouté des éléments dans la collection en mode création sur la fenêtre d'une appli vb, le controle se reconstruise en mode exécution (après l'exécution de la methode ReadProperties)

    Merci de votre aide !

  2. #2
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Faudra voir du côté du développement d'une nouvelle classe. Regarde dans l'aide de VB pour la programmation de classes personnalisées.

    À mon humble avis, en tout cas...

  3. #3
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Par défaut
    Citation Envoyé par zazaraignée
    Faudra voir du côté du développement d'une nouvelle classe. Regarde dans l'aide de VB pour la programmation de classes personnalisées.

    À mon humble avis, en tout cas...
    oui, en fait, j'ai incorporé une classe Onglet et une classe collection Onglets au controle utilisateur mais entre le mode création et le mode utilisation, l'instance du controle est détruite puis reconstruite à partir des propriétés enregistrée a l'aide de writeproperties ! je ne parviens pas à mémoriser la collection d'onglets

    remarque : J'utilise une procédure Property get et property Let Onglets qui permet d'acceder et de modifier la collection d'onglet.

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Par défaut
    hmm je dirais qu'il faut mettre en dur l'initialisation de te collection dans usercontrol_initialize

  5. #5
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Par défaut
    Citation Envoyé par Vld44
    hmm je dirais qu'il faut mettre en dur l'initialisation de te collection dans usercontrol_initialize
    Oui, c'est une idée ! il me semble que l'événement Initialize s'exécute avant readproperties, non ? donc je ne peux pas construire la boite tant que je n'ai pas lu ses propriétés :
    voici le contenu de readproperties

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
      Debug.Print "UserControl_ReadProperties"
      Set Font = PropBag.ReadProperty("Font", Ambient.Font)
      BackColor = PropBag.ReadProperty("BackColor", Ambient.BackColor)
      DesabledColorText = PropBag.ReadProperty("DesabledColorText", DesabledCouleurLabel)
      EnabledColorText = PropBag.ReadProperty("EnabledColorText", EnabledCouleurLabel)
      UnselectedOngletColor = PropBag.ReadProperty("UnselectedOngletColor", UnselectedOngletCouleur)
      SelectedOngletColor = PropBag.ReadProperty("SelectedOngletColor", SelectedOngletCouleur)
      Set mcolOnglets = PropBag.ReadProperty("Onglets", Nothing)
      Call ConstruireBoîte
      Relief = PropBag.ReadProperty("Relief", Relief3D)
    '  OngletCourant = PropBag.ReadProperty("OngletCourant", 0)
    End Sub
    je pensais construire la boite à onglet juste après avoir lu la propriété "Onglets" mais non, ça ne fonctionne pas !

  6. #6
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Par défaut
    Non mais le userControl_initialize est lancé en mode VB sans même que tu n'exécute ton programme

    L'idée est de ne pas stocker dans une property ce qui t'intéresse mais de te faire ta property custom par exemple, sous la forme d'une variable du controle initialisée danns le initialize

  7. #7
    Membre du Club
    Inscrit en
    Mars 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 9
    Par défaut Suite de la question :
    Juste une petite précision : après avoir lu une question fondemmentale sur le manque de couleur des boites à onglets de bases, je me suis mis en devoir de développer moi-meme une boite à onglet colorisable dont l'onglet sélectionné sera de la couleur de la boite et les autres onglets de la couleur du fond du controle (pour plus de contraste).

    Bien evidemment, le code obtenu sera ajouté au codes de developpez.com !
    A+

  8. #8
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Alors bonne chance et je vais suivre ça de près. Vois-tu, je n'ai programmé qu'une fois un contrôle activeX juste pour voir comment... Je ne serai pas d'une bien grande aide mais je suis curieuse du résultat.

Discussions similaires

  1. Réponses: 0
    Dernier message: 10/11/2010, 12h03
  2. Requêter en HQL les propriétés de type Collection
    Par sicard_51 dans le forum Hibernate
    Réponses: 1
    Dernier message: 08/03/2010, 20h08
  3. [nested] récupérer une propriété de type collection
    Par kokumbo dans le forum Struts 1
    Réponses: 2
    Dernier message: 25/10/2007, 16h16
  4. Propriété d'un controle ActiveX
    Par Ndugu dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 26/05/2006, 15h40
  5. [VB6] Créer une page de propriété d'un control ActiveX
    Par Lucas42 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 09/05/2006, 12h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo