Hello,
Par exemple, après un tri dans un listview, visuellement l'élément
numéro 1 se retrouve en 4iem position.
Alors l'élément numéro 1 visible dans la liste n'est pas l'élément
stocké dans listview1.listitems.item(1), qui est en 4.
Du coup, l'index de la liste visible n'est pas le même que celle de la
listview.
Est-il possible de réorganiser le listview en mémoire pour le faire
correspondre à la liste visible ?
Hello,
Par exemple, après un tri dans un listview, visuellement l'élément
numéro 1 se retrouve en 4iem position.
Alors l'élément numéro 1 visible dans la liste n'est pas l'élément
stocké dans listview1.listitems.item(1), qui est en 4.
Du coup, l'index de la liste visible n'est pas le même que celle de la
listview.
Est-il possible de réorganiser le listview en mémoire pour le faire
correspondre à la liste visible ?
Hello,
Par exemple, après un tri dans un listview, visuellement l'élément
numéro 1 se retrouve en 4iem position.
Alors l'élément numéro 1 visible dans la liste n'est pas l'élément
stocké dans listview1.listitems.item(1), qui est en 4.
Du coup, l'index de la liste visible n'est pas le même que celle de la
listview.
Est-il possible de réorganiser le listview en mémoire pour le faire
correspondre à la liste visible ?
Bonjour tking,
tking a écrit :Hello,
Par exemple, après un tri dans un listview, visuellement l'élément numéro 1
se retrouve en 4iem position.
Alors l'élément numéro 1 visible dans la liste n'est pas l'élément stocké
dans listview1.listitems.item(1), qui est en 4.
Du coup, l'index de la liste visible n'est pas le même que celle de la
listview.
Est-il possible de réorganiser le listview en mémoire pour le faire
correspondre à la liste visible ?
Pas tout compris, fais tu un tri des données en dehors du listview ?
Utilises tu les propriétés :
.Sorted = True
.SortKey = NumeroDeColonne
.SortOrder = lvwAscending
Bonjour tking,
tking a écrit :
Hello,
Par exemple, après un tri dans un listview, visuellement l'élément numéro 1
se retrouve en 4iem position.
Alors l'élément numéro 1 visible dans la liste n'est pas l'élément stocké
dans listview1.listitems.item(1), qui est en 4.
Du coup, l'index de la liste visible n'est pas le même que celle de la
listview.
Est-il possible de réorganiser le listview en mémoire pour le faire
correspondre à la liste visible ?
Pas tout compris, fais tu un tri des données en dehors du listview ?
Utilises tu les propriétés :
.Sorted = True
.SortKey = NumeroDeColonne
.SortOrder = lvwAscending
Bonjour tking,
tking a écrit :Hello,
Par exemple, après un tri dans un listview, visuellement l'élément numéro 1
se retrouve en 4iem position.
Alors l'élément numéro 1 visible dans la liste n'est pas l'élément stocké
dans listview1.listitems.item(1), qui est en 4.
Du coup, l'index de la liste visible n'est pas le même que celle de la
listview.
Est-il possible de réorganiser le listview en mémoire pour le faire
correspondre à la liste visible ?
Pas tout compris, fais tu un tri des données en dehors du listview ?
Utilises tu les propriétés :
.Sorted = True
.SortKey = NumeroDeColonne
.SortOrder = lvwAscending
Jacques93 a exposé le 11/11/2007 :Bonjour tking,
tking a écrit :Hello,
Par exemple, après un tri dans un listview, visuellement l'élément
numéro 1 se retrouve en 4iem position.
Alors l'élément numéro 1 visible dans la liste n'est pas l'élément
stocké dans listview1.listitems.item(1), qui est en 4.
Du coup, l'index de la liste visible n'est pas le même que celle de
la listview.
Est-il possible de réorganiser le listview en mémoire pour le faire
correspondre à la liste visible ?
Pas tout compris, fais tu un tri des données en dehors du listview ?
Utilises tu les propriétés :
.Sorted = True
.SortKey = NumeroDeColonne
.SortOrder = lvwAscending
En fait, la liste se compose ainsi
1 - antoine
2 - françois
3 - pierre
4 - marie
Donc si j'appelle l'item 1 avec listview.item j'ai antoine, 2 françois ...
Je fais un tri, résultat à l'écran
3 - pierre
4 - marie
2 - françois
1 - marie
Si j'appelle l'item 1 j'ai comme réponse antoine, ou 2 françois... 4
marie.
Est-ce normal ?
Jacques93 a exposé le 11/11/2007 :
Bonjour tking,
tking a écrit :
Hello,
Par exemple, après un tri dans un listview, visuellement l'élément
numéro 1 se retrouve en 4iem position.
Alors l'élément numéro 1 visible dans la liste n'est pas l'élément
stocké dans listview1.listitems.item(1), qui est en 4.
Du coup, l'index de la liste visible n'est pas le même que celle de
la listview.
Est-il possible de réorganiser le listview en mémoire pour le faire
correspondre à la liste visible ?
Pas tout compris, fais tu un tri des données en dehors du listview ?
Utilises tu les propriétés :
.Sorted = True
.SortKey = NumeroDeColonne
.SortOrder = lvwAscending
En fait, la liste se compose ainsi
1 - antoine
2 - françois
3 - pierre
4 - marie
Donc si j'appelle l'item 1 avec listview.item j'ai antoine, 2 françois ...
Je fais un tri, résultat à l'écran
3 - pierre
4 - marie
2 - françois
1 - marie
Si j'appelle l'item 1 j'ai comme réponse antoine, ou 2 françois... 4
marie.
Est-ce normal ?
Jacques93 a exposé le 11/11/2007 :Bonjour tking,
tking a écrit :Hello,
Par exemple, après un tri dans un listview, visuellement l'élément
numéro 1 se retrouve en 4iem position.
Alors l'élément numéro 1 visible dans la liste n'est pas l'élément
stocké dans listview1.listitems.item(1), qui est en 4.
Du coup, l'index de la liste visible n'est pas le même que celle de
la listview.
Est-il possible de réorganiser le listview en mémoire pour le faire
correspondre à la liste visible ?
Pas tout compris, fais tu un tri des données en dehors du listview ?
Utilises tu les propriétés :
.Sorted = True
.SortKey = NumeroDeColonne
.SortOrder = lvwAscending
En fait, la liste se compose ainsi
1 - antoine
2 - françois
3 - pierre
4 - marie
Donc si j'appelle l'item 1 avec listview.item j'ai antoine, 2 françois ...
Je fais un tri, résultat à l'écran
3 - pierre
4 - marie
2 - françois
1 - marie
Si j'appelle l'item 1 j'ai comme réponse antoine, ou 2 françois... 4
marie.
Est-ce normal ?
Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ), elle
sera donc invisible, mais il faut qu'elle soit correctement renseignée, et
fait le tri sur cette colonne avec les propriétés ad'hoc.
Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ), elle
sera donc invisible, mais il faut qu'elle soit correctement renseignée, et
fait le tri sur cette colonne avec les propriétés ad'hoc.
Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ), elle
sera donc invisible, mais il faut qu'elle soit correctement renseignée, et
fait le tri sur cette colonne avec les propriétés ad'hoc.
Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Il se trouve que Jacques93 a formulé :Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ),
elle sera donc invisible, mais il faut qu'elle soit correctement
renseignée, et fait le tri sur cette colonne avec les propriétés
ad'hoc. Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Dans mon cas, il y a la date et l'heure dans le même champs, ça donne
cela "01/10/2001 10:00:00" et le tri se gauffre.
Il se trouve que Jacques93 a formulé :
Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ),
elle sera donc invisible, mais il faut qu'elle soit correctement
renseignée, et fait le tri sur cette colonne avec les propriétés
ad'hoc. Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Dans mon cas, il y a la date et l'heure dans le même champs, ça donne
cela "01/10/2001 10:00:00" et le tri se gauffre.
Il se trouve que Jacques93 a formulé :Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ),
elle sera donc invisible, mais il faut qu'elle soit correctement
renseignée, et fait le tri sur cette colonne avec les propriétés
ad'hoc. Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Dans mon cas, il y a la date et l'heure dans le même champs, ça donne
cela "01/10/2001 10:00:00" et le tri se gauffre.
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
tking wrote:
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
tking wrote:
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
tking wrote:
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Jean-marc a utilisé son clavier pour écrire :En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
L'explorateur de Windows utilise une listview et la colonne "Date de
modification" indique la date et l'heure sous le format le plus lisible.
Ceci dit j'ai trouvé la solution pour le tri mais il y a ce bug décrit
en premier qui arrive parfois.
Jean-marc a utilisé son clavier pour écrire :
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
L'explorateur de Windows utilise une listview et la colonne "Date de
modification" indique la date et l'heure sous le format le plus lisible.
Ceci dit j'ai trouvé la solution pour le tri mais il y a ce bug décrit
en premier qui arrive parfois.
Jean-marc a utilisé son clavier pour écrire :En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
L'explorateur de Windows utilise une listview et la colonne "Date de
modification" indique la date et l'heure sous le format le plus lisible.
Ceci dit j'ai trouvé la solution pour le tri mais il y a ce bug décrit
en premier qui arrive parfois.
tking wrote:Il se trouve que Jacques93 a formulé :Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ),
elle sera donc invisible, mais il faut qu'elle soit correctement
renseignée, et fait le tri sur cette colonne avec les propriétés
ad'hoc. Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Dans mon cas, il y a la date et l'heure dans le même champs, ça donne
cela "01/10/2001 10:00:00" et le tri se gauffre.
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
tking wrote:
Il se trouve que Jacques93 a formulé :
Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ),
elle sera donc invisible, mais il faut qu'elle soit correctement
renseignée, et fait le tri sur cette colonne avec les propriétés
ad'hoc. Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Dans mon cas, il y a la date et l'heure dans le même champs, ça donne
cela "01/10/2001 10:00:00" et le tri se gauffre.
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
tking wrote:Il se trouve que Jacques93 a formulé :Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ),
elle sera donc invisible, mais il faut qu'elle soit correctement
renseignée, et fait le tri sur cette colonne avec les propriétés
ad'hoc. Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Dans mon cas, il y a la date et l'heure dans le même champs, ça donne
cela "01/10/2001 10:00:00" et le tri se gauffre.
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
On Sun, 11 Nov 2007 22:06:36 +0100, "Jean-marc"
wrote:tking wrote:Il se trouve que Jacques93 a formulé :Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ),
elle sera donc invisible, mais il faut qu'elle soit correctement
renseignée, et fait le tri sur cette colonne avec les propriétés
ad'hoc. Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Dans mon cas, il y a la date et l'heure dans le même champs, ça donne
cela "01/10/2001 10:00:00" et le tri se gauffre.
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
Jean-marc,
peut-être une question de version du contrôle, parce qu'en version 5
même avec un format YYYY/MM/DD les dates ne sont pas triées
correctement par la listview. Les valeurs numériques non plus
d'aileurs.
Dans ce cas, le code de "thing" devrait fonctionner mais je ne vois
pas l'appel de la callback avec l'envoie d'un message
LVM_SORTITEMS/LVM_SORTITEMS_EX.
A voir par exemple :
http://vbnet.mvps.org/index.html?code/callback/lvsortcallback.htm
On Sun, 11 Nov 2007 22:06:36 +0100, "Jean-marc"
<NO_SPAM_jean_marc_n2@yahoo.fr.invalid> wrote:
tking wrote:
Il se trouve que Jacques93 a formulé :
Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ),
elle sera donc invisible, mais il faut qu'elle soit correctement
renseignée, et fait le tri sur cette colonne avec les propriétés
ad'hoc. Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Dans mon cas, il y a la date et l'heure dans le même champs, ça donne
cela "01/10/2001 10:00:00" et le tri se gauffre.
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
Jean-marc,
peut-être une question de version du contrôle, parce qu'en version 5
même avec un format YYYY/MM/DD les dates ne sont pas triées
correctement par la listview. Les valeurs numériques non plus
d'aileurs.
Dans ce cas, le code de "thing" devrait fonctionner mais je ne vois
pas l'appel de la callback avec l'envoie d'un message
LVM_SORTITEMS/LVM_SORTITEMS_EX.
A voir par exemple :
http://vbnet.mvps.org/index.html?code/callback/lvsortcallback.htm
On Sun, 11 Nov 2007 22:06:36 +0100, "Jean-marc"
wrote:tking wrote:Il se trouve que Jacques93 a formulé :Beuh, je dirai non !
Mets une colonne de largeur = 0 (Width = 0) pour la date (AAAAMMJJ),
elle sera donc invisible, mais il faut qu'elle soit correctement
renseignée, et fait le tri sur cette colonne avec les propriétés
ad'hoc. Donc :
.Sorted = True
.SortKey = ColoneDeLaDAte
.SortOrder = lvwAscending ou lvwDescending (au choix)
Et le contrôle Listview fera le travail, en principe ...
Dans mon cas, il y a la date et l'heure dans le même champs, ça donne
cela "01/10/2001 10:00:00" et le tri se gauffre.
En l'occurence le tri ne se "gauffre" pas. Le programmeur, lui, se
gauffre. Il faut rendre à Cesar ce qui est à Cesar.
Plus sérieusement :
Mauvais design => Changer design.
Au besoin créer un champ en plus qui ne servira qu'au tri.
On fixera la valeur du nouveau champ comme étant égale à la
date, mais au format AAAAMMDD, le seul qui garantisse des tris corrects.
Jean-marc,
peut-être une question de version du contrôle, parce qu'en version 5
même avec un format YYYY/MM/DD les dates ne sont pas triées
correctement par la listview. Les valeurs numériques non plus
d'aileurs.
Dans ce cas, le code de "thing" devrait fonctionner mais je ne vois
pas l'appel de la callback avec l'envoie d'un message
LVM_SORTITEMS/LVM_SORTITEMS_EX.
A voir par exemple :
http://vbnet.mvps.org/index.html?code/callback/lvsortcallback.htm