Creation d'objet dynamique ?

Bonjour,

Est-ce que c'est possible de créer des objets pendant l'exécution du code ? Mais par exemple que le nom de cet objet soit TextBox1.Text

Un truc du style :

TextBox1.Text = "NouveauNom"
TextBox1 = New NomDeLaClasse

' et puis pouvoir faire des manips dessus

NouveauNom.IP = "127.0.0.1"


Du coup l'utilisateur créera ces objets par exemple en cliquant sur un bouton et en ayant rempli une textbox ... Vous pensez que c'est possible ?
Merci.

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Oui, un truc dans ce style sauf que par exemple l'utilisateur rentre une chaine de caractère dans une textbox (par exemple : "toto") et que quand il clique ça lui crée un "box3" mais avec la chaine dans la textbox du coup après ça donnerais :

    toto.setLength(12.0)
    toto.setBreadth(13.0)
    toto.setHeight(10.0)
    1. Non, là ce que je voudrais c'est pourvoir donner un nom a un nouvel objet à partir d'une chaine de caractère.

      Un peu comme :
      "Objet" = New PingerClass

      et après je pourrais faire :
      Objet.IP = "127.0.0.1"

      par exemple pour remplir une propriété de l'objet..

      Je sais pas si c'est compréhensible ni même possible ou imaginable mais finalement je trouve la POO un peu limitée ...
      1. Modérateur
        Comme ça ?
        Module mybox
           Class Box
              Public length As Double   ' Length of a box
              Public breadth As Double   ' Breadth of a box
              Public height As Double    ' Height of a box
              Public Sub setLength(ByVal len As Double)
                  length = len
              End Sub
              Public Sub setBreadth(ByVal bre As Double)
                  breadth = bre
              End Sub
              Public Sub setHeight(ByVal hei As Double)
                  height = hei
              End Sub
              Public Function getVolume() As Double
                  Return length * breadth * height
              End Function
           End Class
           Sub Main()
              Dim Box1 As Box = New Box()        ' Declare Box1 of type Box
              Dim Box2 As Box = New Box()        ' Declare Box2 of type Box
              Dim volume As Double = 0.0     ' Store the volume of a box here
        
             ' box 1 specification
              Box1.setLength(6.0)
              Box1.setBreadth(7.0)
              Box1.setHeight(5.0)
              
              'box 2 specification
              Box2.setLength(12.0)
              Box2.setBreadth(13.0)
              Box2.setHeight(10.0)
              
              ' volume of box 1
              volume = Box1.getVolume()
              Console.WriteLine("Volume of Box1 : {0}", volume)
        
              'volume of box 2
              volume = Box2.getVolume()
              Console.WriteLine("Volume of Box2 : {0}", volume)
              Console.ReadKey()
           End Sub
        End Module