Compter les item d'une listview

Résolu/Fermé
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015 - 26 févr. 2015 à 16:15
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015 - 3 mars 2015 à 09:11
Bonjour,

bon tout fonctionne bien maintenant reste un autre problème et là je rame un max
comment identifier un items d'une colonne et afficher la ligne de cet item, et ensuite je voudrais en faire la somme des items identifies
merci d'avance

6 réponses

cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
26 févr. 2015 à 16:35
Bonjour,

Par courtoisie, tu pourrais répondre aux demandes que tu as faites

https://forums.commentcamarche.net/forum/affich-31622930-listview-vb8-express
0
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015
26 févr. 2015 à 23:03
désolé je vous demande de m'excuser cela était involontaire de ma part
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
27 févr. 2015 à 08:18
Pas de souci

voici un exemple:

http://www.cjoint.com/data3/3BBiCgapMIF.htm

Bonne programmation
0
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015
27 févr. 2015 à 08:58
bonjour je suis désolé j'arrive pas à trouver ce dossier quand je clique dessus c'est un autre dossier qui apparait
encore merci de ton aide siprecieuse
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
27 févr. 2015 à 09:37
Je viens de télécharger le fichier c'est le bon dossier;
C'est un fichier zip, il faut le dezipper pour avoir le dossier.
0
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015 > cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024
27 févr. 2015 à 09:44
je viens de ressayer ca me répond qu'il a ete fait avec un logiciel plus récent que le mien impossible a ouvrir suis vraiment désolé et surement novice
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
27 févr. 2015 à 10:50
C'est normal j'utilise VB2010:
Ouvrir un nouveau projet, mettre une listview et 4 boutons
3 TextBox nommés:
Textnom
Textprenom
Textnaissance
un label nommé:
Label4

Ajouter un nouveau Form
Form2 avec une listview

Voici le code à mettre dans le Form1:

Imports System.IO
Public Class Form1
    Dim bf As New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter()
    Dim ligne As Integer
    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        Using fs As New System.IO.FileStream("sauvegarde.txt", IO.FileMode.Create)
            bf.Serialize(fs, New ArrayList(ListView1.Items))
        End Using
    End Sub
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        Button1.Text = "Ajouter item"
        Button2.Text = "Supprimer item"
        Button3.Text = "Ouvrir Form2"
        Button4.Text = "Enregistrer données"
        Label4.Text = "Items cochés"
        'Le ListView1 existe
        ListView1.View = View.Details
        ListView1.CheckBoxes = True
        ListView1.Columns.Add("Nom", 80, HorizontalAlignment.Left)
        ListView1.Columns.Add("Prénom", 80, HorizontalAlignment.Left)
        ListView1.Columns.Add("Année naissance", 100, HorizontalAlignment.Left)
        Try
            If File.Exists("sauvegarde.txt") Then
                Using fs As New System.IO.FileStream("sauvegarde.txt", IO.FileMode.Open)
                    ListView1.Items.AddRange(bf.Deserialize(fs).ToArray(GetType(ListViewItem)))
                End Using
            End If
        Catch
        End Try
    End Sub
    'ajoute item
    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        If Textnom.Text = "" Or Textprenom.Text = "" Or Textnaissance.Text = "" Then Exit Sub
        Dim MyLine As ListViewItem = New ListViewItem(New String() {Textnom.Text, Textprenom.Text, Textnaissance.Text})
        ListView1.Items.Add(MyLine)
    End Sub
    'supprime item
    Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
        If ListView1.SelectedItems.Count > 0 Then
            ListView1.Items.RemoveAt(ligne)
        End If
    End Sub
    'selection ligne
    Private Sub ListView1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ListView1.SelectedIndexChanged
        If ListView1.SelectedItems.Count > 0 Then
            ligne = ListView1.SelectedItems(0).Index
        End If
    End Sub
    'checke par item
    Private Sub ListView1_ItemChecked(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckedEventArgs) Handles ListView1.ItemChecked
        If ListView1.Items.Count > 0 Then ' si listview1 non vide
            For j = 0 To ListView1.Items.Count - 1
                ' colore suivant case cochée par item
                ListView1.Items(j).ForeColor = IIf(ListView1.Items(j).Checked = False, Color.Black, Color.Red)
            Next j
            Label4.Text = ListView1.CheckedItems.Count & " sélectionné" & IIf(ListView1.CheckedItems.Count > 1, "s", "") 'compte les fichiers selectionnés
        End If
    End Sub
    'ouvrir Form2
    Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click
        Form2.ShowDialog()
    End Sub
    'enregistrer données
    Private Sub Button4_Click(sender As System.Object, e As System.EventArgs) Handles Button4.Click
        Using fs As New System.IO.FileStream("sauvegarde.txt", IO.FileMode.Create)
            bf.Serialize(fs, New ArrayList(ListView1.Items))
        End Using
    End Sub
End Class


Et dans le Form2:

Imports System.IO
Public Class Form2
    Dim bf As New System.Runtime.Serialization.Formatters.Binary.BinaryFormatter()
    Private Sub Form2_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        'Le ListView1 existe
        ListView1.View = View.Details
        ListView1.CheckBoxes = True
        ListView1.Columns.Add("Nom", 80, HorizontalAlignment.Left)
        ListView1.Columns.Add("Prénom", 80, HorizontalAlignment.Left)
        ListView1.Columns.Add("Année naissance", 100, HorizontalAlignment.Left)
        ListView1.Items.Clear()
        Try
            If File.Exists("sauvegarde.txt") Then
                Using fs As New System.IO.FileStream("sauvegarde.txt", IO.FileMode.Open)
                    ListView1.Items.AddRange(bf.Deserialize(fs).ToArray(GetType(ListViewItem)))
                End Using
            End If
        Catch
        End Try
    End Sub
End Class


En suivant ces instructions, ça devrait fonctionner!
0
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015
27 févr. 2015 à 11:12
merci beaucoup de ta patience envers moi je vais le tester de suite
0
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015
27 févr. 2015 à 12:32
cela fonctionne très bien merci encore je vais avancer dans mon programme un peu complique mais cela fait marcher les neurones merci de ta patience.
je voudrais copier seulement la ligne sélectionnée dans la listview2 comment dois faire
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
27 févr. 2015 à 18:05
Mettre dans le Form2 un bouton avec ce code:

 
Dim ligne As Integer
 'selection ligne
    Private Sub ListView1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ListView1.SelectedIndexChanged
        If ListView1.SelectedItems.Count > 0 Then
            ligne = ListView1.SelectedItems(0).Index
        End If
    End Sub
    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        MsgBox(ListView1.Items(ligne).Text)
        MsgBox(ListView1.Items(ligne).SubItems(1).Text)
        MsgBox(ListView1.Items(ligne).SubItems(2).Text)
    End Sub


tu mets des variables à la place des MsgBox et ensuite tu fais ce que tu veux

Voilà
0
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015
27 févr. 2015 à 22:51
merci encore de ton aide j'ai copie ce code mais juste un petit soucis j'ai une erreur ""ligne n'est pas déclarée comment faire pour réparer je sais pas le faire désolé encore
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
28 févr. 2015 à 08:08
Tu n'as pas tout recopié!!!

Et ça c'est quoi:

Dim ligne As Integer

Il faut le mettre avec tes autres déclarations
0
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015
28 févr. 2015 à 09:16
oui j'ai tout recopié et cela fonctionne bien c'est en copiant qu'une erreur c'était produite merci encore cela me permet d'avancer un peu plus bonne journée
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
28 févr. 2015 à 10:59
Si tu veux avancer en VB.NET, li faut apprendre les fondamentaux. Déclarations des variables etc.
Voir ceci:

https://plasserre.developpez.com/cours/vb-net/?page=langage-vb2#LV-D

Faire des copier-coller ne te fera pas avancer au contraire, il faut comprendre ce que tu fait. C'est en suivant ces conseils que tu pourras aller plus loin.
J'ai commencé la programmation à 60 ans, tu vois tout n'est pas perdu, il suffit de s'y mettre.

@+ Le Pivert
0
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015 > cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024
2 mars 2015 à 09:52
bonjour merci de te conseils j'ai 65ans voila j'avance doucement par contre je viens de récupérer un nouveau pc en vista bien sur 64 bits impossible de charger vb2010 j'ai le message mettre a jour pack 1 il est bien installe que faire tu peux m'éclairer merci d'avance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
2 mars 2015 à 10:40
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
2 mars 2015 à 14:58
Voilà un exemple en VB2008:

http://www.cjoint.com/data3/3Ccpjse2gAK.htm
0
mylord666 Messages postés 151 Date d'inscription jeudi 26 juin 2014 Statut Membre Dernière intervention 9 septembre 2015
3 mars 2015 à 09:11
merci de ton aide j'ai réussi a charger vb2010 ça marche bien voila prêt pour aller plus loin merci encore
0