cs_veler
Messages postés723Date d'inscriptiondimanche 26 novembre 2006StatutMembreDernière intervention23 janvier 2013
-
28 mars 2007 à 15:52
gregwillm
Messages postés1Date d'inscriptionlundi 26 juin 2006StatutMembreDernière intervention24 juillet 2007
-
24 juil. 2007 à 21:38
Salut, j'ai un problême avec le code ci-dessous:
Dim Dates As String
Dim i As Integer
For i = 0 To ListView1.Items.Count + 10
Dates = Dates & ListView1.Items(i).SubItems(0).Text & "|" & ListView1.Items(i).SubItems(1).Text & "|" & ListView1.Items(i).SubItems(2).Text & "|" & ListView1.Items(i).SubItems(3).Text & "|" & ListView1.Items(i).SubItems(4).Text & "|" & ListView1.Items(i).SubItems(5).Text & "|" & ListView1.Items(i).SubItems(6).Text & "|" & ListView1.Items(i).SubItems(7).Text & "|" & ListView1.Items(i).SubItems(8).Text & "|" & ListView1.Items(i).SubItems(9).Text & vbCrLf
Next i
FileOpen(1, path & "" & nom & "" & "\Gestion\sto.gcc", OpenMode.Binary)
FilePut(1, Dates)
FileClose(1)
Ce que j'ai mis en rouge, c'est ou j'ai le bugs, j'explique:
Je veux sauvegarder le contenu d'un ListView qui a 10 colonnes. Arrivé à la ligne en rouge, il me dit "InvalidArgument=La valeur '1' n'est pas valide pour 'index'"
Je voix pas trop ou est le bug dans cette ligne.
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 29 mars 2007 à 01:10
Bonsoir,
à l' origine, l' erreur était dans:
Dates = ListView1.Items(i).SubItems(0).Text & ...etc
il faut savoir que SubItems est utilisée pour affecter une valeur
à une colonne, par exemple ListView1.Items(i).SubItems(0).Text=Dates
alors que pour la récupération c' est plutôt :
Dates = ListView1.Items(i).ListSubItems(0).Text & ...etc
Toujours est t-il que :
ListView1.Items(i).SubItems(0).Text=Dates
provoque une erreur si Dates est Null
Ce qu' il faut faire dans ce cas c' est
ListView1.Items(i).SubItems(0).Text=IIF(IsNull(Dates),"",Dates)
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 29 mars 2007 à 01:33
Salut,
voici un exemple de parcours des items et sous-items en dotnet :
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.ListView1.Items.Add("ZERO")
Me.ListView1.Items(0).SubItems.Add("A")
Me.ListView1.Items(0).SubItems.Add("B")
Me.ListView1.Items(0).SubItems.Add("C")
Me.ListView1.Items.Add("UN")
Me.ListView1.Items(1).SubItems.Add("A")
Me.ListView1.Items(1).SubItems.Add("B")
Me.ListView1.Items(1).SubItems.Add("C")
Me.ListView1.Items.Add("DEUX")
Me.ListView1.Items(2).SubItems.Add("A")
Me.ListView1.Items(2).SubItems.Add("B")
Me.ListView1.Items(2).SubItems.Add("C")
Me.ListView1.Items.Add("TROIS")
Me.ListView1.Items(3).SubIems.Add("A")
Me.ListView1.Items(3).SubItems.Add("B")
Me.ListView1.Items(3).SubItems.Add("C")
Dim i, j As Integer
Dim str
As String
For i = 0 To ListView1.Items.Count - 1
For j = 0 To ListView1.Items(i).SubItems.Count - 1
str += ListView1.Items(i).SubItems(j).ToString
Next
Next
MessageBox.Show(str)
End Sub
End Class
~ <small> Mortalino ~ Colorisation automatique </small>
@++
<hr width ="100%" size="2" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
/DIV>
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 29 mars 2007 à 01:47
Bonsoir mortalino,
ok , merci d' avoir corrigé....
c' était juste une piste car en vérité je ne connais pas trop dotnet.
et je croyais que c' était pareil...
ps: au fait t' as pas encore filé dans ta chambre, toi !
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 29 mars 2007 à 01:55
Salut Chaibat05,
lol, oui je suis dans mon lit ;)
(mdr ton post ^^)
Pour DotNet, je galère aussi, j'apprends depuis 2 semaines, et j'en suis à la page 250 sur 1300.
Mais dès qu'une demande facile comme celle-ci est présente, j'essaie de m'en servir pour m'exercer.
Par contre, mon exemple est certainement perfectible, car le nom des SubItems apparait dans le MsgBox.
Effet indésirable.
Sinon, ton test est légitime, il faut effectivement vérifier qu'il n'y ait pas de résultat null.
En tout cas, en dotnet je confirme que le IIF est pris en compte.
Bon courage en tout cas à notre ami, et bonne soirée à tous (dodo pour de bon)
@++
<hr width="100%" size="2" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
/DIV>
gregwillm
Messages postés1Date d'inscriptionlundi 26 juin 2006StatutMembreDernière intervention24 juillet 2007 24 juil. 2007 à 21:38
Salut tout le monde,
Je sais que ce post est vieux mais je m'interresse moi aussi à faire une sauvegarde d'un listview...
J'ai regardé le code de fauve sur l'ouverture du fichier.dat et une erreur me dit :
"La résolution de surcharge a échoué, car aucun 'Val' accessible n'accepte ce nombre d'arguments."
Ne sachant pas comment le résoudre, je vous demande un petit peu d'aide ^^
Merci d'avance.