OVH Cloud OVH Cloud

Affichage Contenu d'un ListView

6 réponses
Avatar
Pascal
bonsoir à tous,

il ya un truc que je pige pas! forcément sinon serai pas ici occupé à poster
me direr vous!

dans un listview, j'affiche des Dossiers avec ce code
========================
With Me.ListView1
.ListItems.Clear

For i = 0 To Me.Dir1.ListCount - 1
s = Mid(Me.Dir1.List(i), InStrRev(Me.Dir1.List(i), "\") + 1)
.ListItems.Add , , s, 1
Next i
End With
=================
PROPRIETE du listview
VIEW = 0 icon
ARRANGE = 2 autoTop
LABELEDIT = 1 MANUEL
LABELWRAP = true
SORTED = true by ascending

Les dossiers s'affichent mais ne sont pas a gauche, ils s'affichent avec un
décalage comme s'il y avait une colonne cachée
Une petite photo valant mieux qu'une explication
http://cjoint.com/?mla1yjL8zJ

si kkun peut m'aider d'avance merci

Pascal

6 réponses

Avatar
Jean-Marc
"Pascal" a écrit dans le message de
news:%23omssVe$
bonsoir à tous,

il ya un truc que je pige pas! forcément sinon serai pas ici occupé à


poster
me direr vous!

dans un listview, j'affiche des Dossiers avec ce code
======================= > With Me.ListView1
.ListItems.Clear

For i = 0 To Me.Dir1.ListCount - 1
s = Mid(Me.Dir1.List(i), InStrRev(Me.Dir1.List(i), "") + 1)
.ListItems.Add , , s, 1
Next i
End With
================ > PROPRIETE du listview
VIEW = 0 icon
ARRANGE = 2 autoTop
LABELEDIT = 1 MANUEL
LABELWRAP = true
SORTED = true by ascending

Les dossiers s'affichent mais ne sont pas a gauche, ils s'affichent avec


un
décalage comme s'il y avait une colonne cachée
Une petite photo valant mieux qu'une explication
http://cjoint.com/?mla1yjL8zJ



Hello,

ce que tu obtiens est tout à fait normal. En fait cela dépend
de la taille de tes icones, et aussi de la taille du pls grand texte
à afficher. Le controle arrange "au mieux" l'affichage, et selon le
répertoire sur lequel tu te trouves, il décale plus ou moins à gauche.

Voici un exemple ou tout est collé, j'ai utilisé ton code sans aucune
modifs:

http://myjmnhome.dyndns.org/listview.htm

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Pascal
Hello, jean-marc
merci pour ton aimable réponse
mais je constate que la taille importe peu, j'étais en 32x32, un 16x16 ne
change rien! tu parles de :<<la taille du pls grand texte>> euh c'est quoi
le pls
pour le répertoire, il est unique donc pas de variations d'affichage
ne vois pas ai parcouru toutes les propriétés de ListView
merci à toi

Pascal



"Jean-Marc" a écrit dans le message de news:
439beff7$0$5447$
"Pascal" a écrit dans le message de
news:%23omssVe$
> bonsoir à tous,
>
> il ya un truc que je pige pas! forcément sinon serai pas ici occupé à
poster
> me direr vous!
>
> dans un listview, j'affiche des Dossiers avec ce code
> ======================= > > With Me.ListView1
> .ListItems.Clear
>
> For i = 0 To Me.Dir1.ListCount - 1
> s = Mid(Me.Dir1.List(i), InStrRev(Me.Dir1.List(i), "") + 1)
> .ListItems.Add , , s, 1
> Next i
> End With
> ================ > > PROPRIETE du listview
> VIEW = 0 icon
> ARRANGE = 2 autoTop
> LABELEDIT = 1 MANUEL
> LABELWRAP = true
> SORTED = true by ascending
>
> Les dossiers s'affichent mais ne sont pas a gauche, ils s'affichent avec
un
> décalage comme s'il y avait une colonne cachée
> Une petite photo valant mieux qu'une explication
> http://cjoint.com/?mla1yjL8zJ

Hello,

ce que tu obtiens est tout à fait normal. En fait cela dépend
de la taille de tes icones, et aussi de la taille du pls grand texte
à afficher. Le controle arrange "au mieux" l'affichage, et selon le
répertoire sur lequel tu te trouves, il décale plus ou moins à gauche.

Voici un exemple ou tout est collé, j'ai utilisé ton code sans aucune
modifs:

http://myjmnhome.dyndns.org/listview.htm

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;



Avatar
David
Bonjour,

"Pascal" a écrit dans le message de news:
OmtELfl$
change rien! tu parles de :<<la taille du pls grand texte>> euh c'est quoi
le pls



pls = +

a+
Jean-Pol DAVID
ICQ 28394733
--
Quis ? Quid ? Ubi ? Quibus auxiliis ? Cur ? Quomodo ? Quando ?
Avatar
Picalausa François
Hello,

J'ai déjà vu se problème lorsqu'il y a beaucoup d'items dans la liste et que
donc il y a une scrollbar verticale... qui réduit la largeur d'affichage et
impose donc une scrollbar horizontale...
En envoyant un WM_HSCROLL, ça devrait pouvoir arranger le problème.
Employer Arrange = lvwAutoTop pourrait aussi arranger le problème... mais le
comportement de ce type d'arangement n'est pas cool.
Sinon, employer un autre contrôle listview... par exemple
http://www.vbaccelerator.com/home/VB/Code/Controls/ListView/article.asp

--
Picalausa François

"Pascal" a écrit dans le message de news:
%23omssVe$
bonsoir à tous,

il ya un truc que je pige pas! forcément sinon serai pas ici occupé à
poster
me direr vous!

dans un listview, j'affiche des Dossiers avec ce code
======================= > With Me.ListView1
.ListItems.Clear

For i = 0 To Me.Dir1.ListCount - 1
s = Mid(Me.Dir1.List(i), InStrRev(Me.Dir1.List(i), "") + 1)
.ListItems.Add , , s, 1
Next i
End With
================ > PROPRIETE du listview
VIEW = 0 icon
ARRANGE = 2 autoTop
LABELEDIT = 1 MANUEL
LABELWRAP = true
SORTED = true by ascending

Les dossiers s'affichent mais ne sont pas a gauche, ils s'affichent avec
un
décalage comme s'il y avait une colonne cachée
Une petite photo valant mieux qu'une explication
http://cjoint.com/?mla1yjL8zJ

si kkun peut m'aider d'avance merci

Pascal




Avatar
Pascal
oui oui j'ai pas l'air con là!
merci
"David" a écrit dans le message de news:
uXpP7ul$
Bonjour,

"Pascal" a écrit dans le message de news:
OmtELfl$
> change rien! tu parles de :<<la taille du pls grand texte>> euh c'est


quoi
> le pls

pls = +

a+
Jean-Pol DAVID
ICQ 28394733
--
Quis ? Quid ? Ubi ? Quibus auxiliis ? Cur ? Quomodo ? Quando ?




Avatar
Pascal
hello,

oui le problème est excatement ce que tu décrit s'il n'y a que 2 ou 3 items
le problème ne se pose pas mais sur les 37 présent oui et j'en attends
+-2500

Pour le lwautotop je l'avais déjà essayé sans succès, ce qui peut encore
paraître est le lwautoleft mais pas vraiment présentable.
je vais regarder du côté de WM_HSCROLL comme tu le suggères
a défaut essaierai de mettre en place l'OCX

merci de ton aide
Pascal

"Picalausa François" a écrit dans le message de news:
eocpcEm$
Hello,

J'ai déjà vu se problème lorsqu'il y a beaucoup d'items dans la liste et


que
donc il y a une scrollbar verticale... qui réduit la largeur d'affichage


et
impose donc une scrollbar horizontale...
En envoyant un WM_HSCROLL, ça devrait pouvoir arranger le problème.
Employer Arrange = lvwAutoTop pourrait aussi arranger le problème... mais


le
comportement de ce type d'arangement n'est pas cool.
Sinon, employer un autre contrôle listview... par exemple
http://www.vbaccelerator.com/home/VB/Code/Controls/ListView/article.asp

--
Picalausa François

"Pascal" a écrit dans le message de news:
%23omssVe$
> bonsoir à tous,
>
> il ya un truc que je pige pas! forcément sinon serai pas ici occupé à
> poster
> me direr vous!
>
> dans un listview, j'affiche des Dossiers avec ce code
> ======================= > > With Me.ListView1
> .ListItems.Clear
>
> For i = 0 To Me.Dir1.ListCount - 1
> s = Mid(Me.Dir1.List(i), InStrRev(Me.Dir1.List(i), "") + 1)
> .ListItems.Add , , s, 1
> Next i
> End With
> ================ > > PROPRIETE du listview
> VIEW = 0 icon
> ARRANGE = 2 autoTop
> LABELEDIT = 1 MANUEL
> LABELWRAP = true
> SORTED = true by ascending
>
> Les dossiers s'affichent mais ne sont pas a gauche, ils s'affichent avec
> un
> décalage comme s'il y avait une colonne cachée
> Une petite photo valant mieux qu'une explication
> http://cjoint.com/?mla1yjL8zJ
>
> si kkun peut m'aider d'avance merci
>
> Pascal
>
>