Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Listview à plusieurs colonnes et images [ Windows / System ] (lemick_2)

dimanche 18 mai 2008 à 11:07:12 | Listview à plusieurs colonnes et images

lemick_2

Salut, Je suis actuellement en train de porter une appli de CVI/Labwindows sur VS 2008, et je bloque sur la listview de mon application. J'ai vu plusieurs sources permettant d'ajouter du texte dans plusieurs colonnes( http://www.cppfrance.com/codes/TRI-COLONNES-LISTVIEW-WIN32_24239.aspx ), mettre des images dans une liste simple(http://chgi.developpez.com/windows/listview/) mais je n'en ai pas vu avec les 2 :/ J'ai plusieurs questions : - Est t'on obligé de passer par l'évenement "LVN_GETDISPINFO" pour afficher du texte dans la liste, ne peux t'on pas le faire plus simplement? Changer unitairement les cellules" - Mon anglais s'est un peu rouillé est j'ai un peu de mal à comprendre le rôle précis de chacuns des membres des structures LVITEM et LVCOLUMN, quelqu'un aurai t'il un lien vers un tuto? merci d'avance :)

dimanche 18 mai 2008 à 13:21:15 | Re : Listview à plusieurs colonnes et images

vecchio56

Administrateur CodeS-SourceS
Je pense que oui, on est obligé d'utiliser le message LVN_GETDISPINFO.
Quels sont les champs que tu ne comprends pas dans les structures LVITEM et LVCOLUMN?

_____________________________________
Un éditeur de ressources gratuit pour Windows


dimanche 18 mai 2008 à 13:39:52 | Re : Listview à plusieurs colonnes et images

lemick_2

Merci pour ta réponse.
Pour les structure, j'ai un peu de mal avec les items et subitems.


Sinon au niveau de ma liste, j'arrive à afficher les icones en mode "simple" ( pas de colonnes --> LVSIL_NORMAL) mais quand j'insère les colonnes, les icones n'apparaissent pas ( vide) pourtant j'ai bien mis le LVSIL_STATE à la création de la liste.

J'ai mis ici >http://lemick2.free.fr/liste.txt< le bout de code concerné au cas ou je louperai quelque chose d'important.


dimanche 18 mai 2008 à 14:36:42 | Re : Listview à plusieurs colonnes et images

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
subitem tu peux le mettre à 0 je pense, pour ma part je ne me souviens pas avoir eu à l'utilier.
item = index de la ligne dont il est question

Pour ton code, tu peux pas donner un projet complet? Ca m'évitera d'avoir à tout refaire pour tester

_____________________________________
Un éditeur de ressources gratuit pour Windows


dimanche 18 mai 2008 à 14:43:21 | Re : Listview à plusieurs colonnes et images

lemick_2

Merci pour ta réponse :)

J'ai trouvé la solution à mon problème :
Il faut déclarer la liste d'image avec le style "LVSIL_SMALL" (ListView_SetImageList)
Je trouve pas ca très logique mais l'important est que ca marche.

dimanche 18 mai 2008 à 17:04:34 | Re : Listview à plusieurs colonnes et images

racpp

Administrateur CodeS-SourceS
Réponse acceptée !
Salut,
Pour LVN_GETDISPINFO je pense qu'on peut s'en passer. Personnellement je ne m'en sers jamais. Pour changer le texte d'une seule cellule d'une ListView je fais comme ceci:
lvitem.mask = LVIF_TEXT;
lvitem.iItem=0;//premier item
lvitem.iSubItem=2;// cellule N°2
lvitem.pszText="Bonjour";
SendMessage(hlistview,LVM_SETITEMTEXT,0,(LPARAM)&lvitem);

On peut aussi utiliser la macro ListView_SetItemText().
Pour d'autres modifications on peut utiliser le message LVM_SETITEM ou la macro ListView_SetItem().



dimanche 18 mai 2008 à 17:08:56 | Re : Listview à plusieurs colonnes et images

vecchio56

Administrateur CodeS-SourceS
Ben j'aurai appris un truc aujourd'hui. Je n'avais jamais pu comprendre à quoi servait ce subItem...

_____________________________________
Un éditeur de ressources gratuit pour Windows


dimanche 18 mai 2008 à 17:30:49 | Re : Listview à plusieurs colonnes et images

racpp

Administrateur CodeS-SourceS
Je pense que LVN_GETDISPINFO ne doit être utilisé que si le contenu de la listview est stocké quelque part par l'application. Par défaut, une listview gère elle-même son contenu.

dimanche 18 mai 2008 à 18:36:27 | Re : Listview à plusieurs colonnes et images

BruNews

Administrateur CodeS-SourceS
LVN_GETDISPINFO est effectivement très pratique pour fournir les données seulement quand les lignes sont visibles, ça permet un affichage quasi instantané au lieu d'insérer des milliers (ou plus en cas de grosse table BDD) de lignes dans la listview.

ciao...
BruNews, MVP VC++

dimanche 18 mai 2008 à 19:25:57 | Re : Listview à plusieurs colonnes et images

racpp

Administrateur CodeS-SourceS
Pour la vitesse il est également possible d'utiliser une ListView en OWNERDRAWFIXED. Ainsi, on ne dessine qu'une portion de lignes à la fois. La listview aura une taille fixe. Disons une trentaine d'éléments au total par exemple. Le contenu de ces éléments correspondra à une page, parmi plusieurs, d'une trentaine de lignes extraites d'une base de données ou autre. Quelques astuces de programmation et le tour est joué.


1 2

Cette discussion est classé dans : images, texte, listview, http, colonnes


Répondre à ce message

Sujets en rapport avec ce message

recuperer texte d'une ListView [ par glipper ] Lol bonjour, (et vi encore moi, désolé :)Maintenant, j'essaie de récuperer le nom de l'item selectionné dans ma ListView. J'ai récuperé le numero de l Changer la couleur du texte d'une ligne ListView [ par larion ] Bonjour, J'ai donc une ListView comportant 3 colonnes. Pendant que j'inseres les lignes certaines doivent être en rouge. Code: TListItem *ListItem; L lire/ecrire fichier texte a plusieurs colonnes [ par denini ] voilà, j'aimerais ecrire et lire sur un fichier texteJe voudrais stocker une date, une valeur et un nbet ce pour N clients.Je voudrais que le fichier zone de texte avec images [ par CyberP ] Voilà... j'ai créé un petit programme en chat, et je voudrais savoir s'il existait un type de zone de texte (pour l'instant j'utilise les CEdit de stl prob listview [ par flatou ] salut a tousj'ai un prob tt con avec une listview.Le prob est que je n'arrive pas a ajouter du texte dans les differentes colonnes. voici les bouts de Hint sur ListView [ par larion ] Bonjour,Dans une ListView comportant plusieurs colonnes et lignes, il arrive parfois que le texte soit plus large que la colonne. Un simple passage de trie des colonnes dans listview [ par demo42 ] bonjours j' ai une base de données mysql et je voudrai trier ma listview encliquant sur une colonne.. comment faire sans faire intervenir la base de d créer une listview dynamiquement avec plusieurs colonnes [ par romydamour ] salut à tous,voilà, si je vous montre ce petit bou comment creer des cellules dans une list view [ par vincetreg ] Bonjour tout le monde, j'ai un probleme très difficile à résoudre... Je souhaiterai creer des cellules dans une listview. En effet, à chaque création ListView [ par ncoder ] Bonjour à tous !Je fais un programme avec une listview à 5 colonnes, dont la dernière est une progressbar.Pour gérer tout ça, j'ai utilisé le style LV


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,31 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.