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 :

[VB6] création dynamique d'un controle


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 23
    Points : 10
    Points
    10
    Par défaut [VB6] création dynamique d'un controle
    Bonjour à tous.
    La difficulté que je rencontre est de créer dynamiquement un controle à l'intérieur d'un autre controle.
    Je m'explique : sur ma Form, j'ai une PictureBox sur laquelle je souhaite créer dynamiquement un controle Line.
    Dans mon code ci-dessous, comment faire pour indiquer que le controle Line appartient à la PictureBox ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim TOTO as VB.Line
    
    ' code pour créer et afficher une Line :
    Set TOTO = Form1.Controls.Add("VB.Line", "toto")
    TOTO.X1 = 10
    TOTO.Y1 = 10
    TOTO.X2 = 100
    TOTO.Y2 = 100
    TOTO.Visible = True
    
    ' code pour supprimer cette Line :
    Set TOTO = Nothing
    Form1.Controls.Remove "toto"
    Merci.

  2. #2
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Commence par ajouter un 'line' sur ton picture box
    met sa propriété index à 0 et sa propriété visible à false
    inspire toi de ce code pour ajouter des line1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Command1_Click()
      Dim Idx As Integer
      Idx = Line1.Count
      Load Line1(Idx)
      Line1(Idx).Y1 = Line1(Idx - 1).Y1 + 100
      Line1(Idx).Y2 = Line1(Idx - 1).Y2 + 100
      Line1(Idx).Visible = True
     
    End Sub

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 23
    Points : 10
    Points
    10
    Par défaut
    Merci, ça marche au poil, et c'est bien plus simple comme ça !

  4. #4
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    N'oublie pas le tag résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB6] Création de formulaire dynamique de recherche
    Par Mat_76 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 07/05/2007, 10h41
  2. Création dynamique control à partir d'une string
    Par J@ckHerror dans le forum Windows Forms
    Réponses: 3
    Dernier message: 22/03/2007, 06h22
  3. création dynamique d'un control
    Par thony76 dans le forum MFC
    Réponses: 16
    Dernier message: 06/07/2006, 14h35
  4. [VB6] Création dynamique de controles dans un SSTab
    Par Txomin dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 20/12/2004, 12h13
  5. [VB6] creation et gestion de contrôle dynamique
    Par olivierx dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 23/04/2004, 01h09

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