cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 2018
-
Modifié par cs_JMO le 11/04/2015 à 16:02
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 2018
-
12 avril 2015 à 12:39
Bonjour le Forum,
Dans un formulaire, j'ai chargé une classe ImageList, avec 5 images:
1ère : Logo Excel
2ème : Logo Word
3ème : Image Forward (traitement sélectionné)
4ème : Image World
5ème : Image Billboard
Je créé dynamiquement le TreeView1, puis les nodes.
Sub InitializeTreeView() Dim names As New List(Of String) From {"Création Plan de Production", _ "Création Consignes Client", _ "Création Consignes Client (Delta)", _ "Création Consignes SAVEMUTU"} Treeview1.BeginUpdate() Treeview1.Nodes.Add("Choix du traitement") Treeview1.Location = New Point(15, 100) Treeview1.Size = New Size(600, 1200) Treeview1.BorderStyle = BorderStyle.None Treeview1.BackColor = Color.NavajoWhite Treeview1.Font = New Font("Arial", 12, FontStyle.Underline) Treeview1.ImageList = ImageList1 Treeview1.ImageIndex = 4 Treeview1.SelectedImageIndex = 4
For Each item As String In names Dim newnode As New TreeNode newnode.Text = item newnode.NodeFont = New Font("Arial", 12, FontStyle.Italic) Treeview1.Nodes(0).ImageIndex = 3 Treeview1.Nodes(0).SelectedImageIndex = 3 Treeview1.Nodes(0).Nodes.Add(newnode) Next Treeview1.ExpandAll() Me.Controls.Add(Treeview1) Treeview1.EndUpdate() End Sub
Private Sub InitializeNodePDP() ' Déclaration des variables Dim arrLine As New List(Of String) Dim parts() As String
' Creation d'un tableau contenant toutes les lignes du fichier config .ini arrLine = System.IO.File.ReadAllLines(PathTeam & PathConfig & FileConfig, _ System.Text.Encoding.Default).ToList ' Parcours du tableau For Each items As String In arrLine Dim MyCustomer As String ' Split sur vbtab pour récupérer le nom du client et les colonnes du Plan de Production parts = items.Split(New Char() {Convert.ToChar(Keys.Tab)}, StringSplitOptions.RemoveEmptyEntries)
If UBound(parts) = 1 Then MyCustomer = Replace(parts(0), Chr(64), vbNullString) Treeview1.Nodes(0).Nodes(0).ImageIndex = 4 Treeview1.Nodes(0).Nodes(0).SelectedImageIndex = 0 Treeview1.Nodes(0).Nodes(0).Nodes.Add(MyCustomer) End If Next Treeview1.ExpandAll() End Sub
Mon souci, ce sont les images, je souhaiterai que :
- que le TreeView (Choix du traitement) ait toujours la 4ème image (World);
- que les Nodes (Création ...) ait toujours la 5ème image (Billboard);
- que dans le node fils (Client 1, Client 2 ....) je permute au clic sur les images 3 (Forward) et 0 (Logo Excel).
Soit, par rapport à l'image :
World (Choix du traitement)
Billboard (Création Plan de Production)
Logo Excel (Client 1 non sélectionné)
Forward (Client 2 sélectionné)
Logo Excel (Client 3 non sélectionné)
Billboard (Création Consignes ...)
Billboard (Création Consignes ...)
Billboard (Création Consignes ...)
Je n'arrive pas à figer les images du "Choix du traitement" et des "Création ...".
12 avril 2015 à 12:39
Effectivement, en suivant tes conseils avisés, j'obtiens le résultat souhaité.
Merci et bonne journée,
@+
jean-marc