Bonjour à tous,
Dans le cadre d'une conversion de VB6 vers VB.net.
J'ai plusieurs formulaires avec énormément d'objet graphique, surtout l'un de ceux ci qui comporte 120 fois le même groupe de 10 objets donc 1200 objets graphique (textbox, picture, label).
En vb6 impossible de dépasser les 255 objets sans passer par des tableaux d'objet avec la gestion des index. VB6 le gère parfaitement et mon code en est simplifié par la suite à l'aide de boucle, surtout que ce qui me permet de gérer ces images et texte est lui aussi en tableau.
En VB.net il n'y a pas de gestion d'index sur les Objet mais j'ai trouvé une parade qui fonctionne et pratique lorsqu'il n'y a pas autant d'objet crée.
exemple simplifié:
J'utilise ensuite MesTextBox comme je le faisait en VB6.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 private MesTextBox(10) as new TextBox Public Sub New() MesTextBox(0) = textBox0 MesTextBox(1) = textBox1 MesTextBox(2) = textBox2 MesTextBox(3) = textBox3 MesTextBox(4) = textBox4 MesTextBox(5) = textBox5 MesTextBox(6) = textBox6 MesTextBox(7) = textBox7 MesTextBox(8) = textBox8 MesTextBox(9) = textBox9 End Sub
Toutefois sur le formulaire aillant les 1200 objets j'aimerais savoir s'il y a mieux à faire quand même.
J'ai entendu parlé de création d'un modèle afin de le reproduire. Mais pour le moment j'ai pas trouvé d'exemple.
Voila mon modèle à reproduire 120 fois.
il y a donc un GroupBox qui contient 6 PictureBox, 3 textbox et un label (sur la photo un textbox avec le 1 mais un label est mieux). Les PictureBox me sert à afficher des voyants d'état ou d'alarme, les TextBox pour des mesures et le Label pour le numéro de 1 a 120 (toujours fixe)
Les 120 groupes sont divisé en 4 et affichés dans 4 onglets d'un tabControl.
Je continu à chercher mais si vous avez un tuto à me conseiller se serait sympa, merci.
Partager