cs_REMYB
Messages postés8Date d'inscriptionjeudi 15 mai 2003StatutMembreDernière intervention13 juin 2003
-
13 juin 2003 à 13:15
Delbeke
Messages postés200Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention18 novembre 2005
-
15 juin 2003 à 02:08
Je souhaiterai ajouter plusieurs boutons identique à un formulaire et leur affecté du code s'til un évenement click...
Je m'y prend peut-etre mal ??
Merci d'avance
Le code en vb.net :
Copier le code entier dans un nouveau programme
Définir dans les proprié té de la'application la feuille de démmarage frm_commandes
et coller le code suivant pour exemple :
Public Class Frm_prep_commandes
Inherits System.Windows.Forms.Form
Friend WithEvents cmd_Detail As System.Windows.Forms.Button
Public strClients As String()
Public lblClients As Label()
Public lblInterlocuteurs As Label()
Public lblDerniereCommande As Label()
Public lblTelephone As Label()
Public i, j, k, x, y As Integer
#Region " Code généré par le Concepteur Windows Form "
lblClients(i) = New Label
lblClients(i).Text = strClients(i)
lblClients(i).Size = New Size(220, 20)
lblClients(i).Location = New Point(50, x)
lblClients(i).Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.Controls.Add(lblClients(i))
cmd_Detail(i) = New Button
cmd_Detail(i).Text = "Commande"
cmd_Detail(i).Size = New Size(200, 20)
cmd_Detail(i).Location = New Point(400, x)
cmd_Detail(i).TabStop = False
Me.Controls.Add(cmd_Detail(i))
x += 21
cmd_Detail(i) = New Button
cmd_Detail(i).Text = "Consultation historique"
cmd_Detail(i).Size = New Size(200, 20)
cmd_Detail(i).Location = New Point(400, x)
cmd_Detail(i).TabStop = False
Me.Controls.Add(cmd_Detail(i))
x += 21
lblDerniereCommande(i) = New Label
lblDerniereCommande(i).Text = "Dernière commande le : Mercredi 24 Septembre 2003"
lblDerniereCommande(i).Size = New Size(350, 20)
lblDerniereCommande(i).Location = New Point(80, x)
Me.Controls.Add(lblDerniereCommande(i))
x += 21
lblInterlocuteurs(i) = New Label
lblInterlocuteurs(i).Text = "Interlocuteurs : Eric "
lblInterlocuteurs(i).Size = New Size(350, 20)
lblInterlocuteurs(i).Location = New Point(80, x)
Me.Controls.Add(lblInterlocuteurs(i))
x += 21
lblTelephone(i) = New Label
lblTelephone(i).Text = "Téléphone : 02.62.98.58.69"
lblTelephone(i).Size = New Size(350, 20)
lblTelephone(i).Location = New Point(80, x)
Me.Controls.Add(lblTelephone(i))
x += 40
Next i
Me.WindowState = FormWindowState.Maximized
End Sub
'La méthode substituée Dispose du formulaire pour nettoyer la liste des composants.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Requis par le Concepteur Windows Form
Private components As System.ComponentModel.IContainer
'REMARQUE : la procédure suivante est requise par le Concepteur Windows Form
'Elle peut être modifiée en utilisant le Concepteur Windows Form.
'Ne la modifiez pas en utilisant l'éditeur de code.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
'
'Frm_prep_commandes
'
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(292, 273)
Delbeke
Messages postés200Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention18 novembre 2005 15 juin 2003 à 02:08
Je ne connais pas VB NET, mais je connais la techique utilisée par VB : céer une collection contenant les controles. quand un controle déclenche un événement, il est répercuté par la collection en lui ajouta l'index de l'objet qui a déclenché l'événement.
J'ai un peu regardé VB NET et l'impossibilté pour l'interve de programmation de gérer le collection de composant m'a tout de suite rebuté. j'ai alors créé un petit programme VB qui avait cette fonctinalité et j'ai utilisé l'assitant de migration pour voir comment il résoudrait le problème et effectivement il (l'assitant) était passé par l'intermédiaire d'une collection spécialement prévue pour faire ce travail. je vous conseillerais donc de faire la même manip et vous aurez la solution.
Jean-Luc