Ajout d'éléments dans une listview

Signaler
Messages postés
29
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
8 février 2007
-
Messages postés
29
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
8 février 2007
-
Bonjour,
Je débute la prog en c++ graphique et mon prof nous a donné comme sujet un récapitulatif assez long qui necessite plusieurs colonne, j'ai donc pensé à une listview à 3 colonnes. Ne sachant pas utiliser c++, j'ai demandé de l'aide à mon prof sur l'utilisation de la listview et il m'a répondu : j'en sais rien ....
Ca c'est du prof de programmation comme on les aime. Donc je fais appelle à votre savoir (qu'il n'a pas) sur comment ajouter des elements dans une ligne et une colonne.

Je vous remercie d'avance.

10 réponses

Messages postés
688
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
2 juin 2006
1
Vraiment il est trop rance ton prof;
tu lui dira de la part de Satellite34;

le mieux pour toi c'est encore de se taper la doc msdn;

point de départ :
http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cpref/html/frlrfsystemwindowsformslistviewlistviewitemcollectionclassaddtopic.asp

voila, je ne fais pas de pro windows donc bon, mais je pense qu'en lisant ca, tu vas arriver a tes fins ( et tu sera meilleur que ton prof (mdr) )



@+;
satellite34

http://www.rootscommunity.com/</FON< body>
Messages postés
29
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
8 février 2007

pour etre bien naze il est bien naze, ses cours sont comment dire ... très inutile, c'est du type : demmerde toi pendant que je surf sur des sites de boolz :)
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
Selon BruNews :

HWND hlv;

void __stdcall InitLVColumns()
{
LVCOLUMN lvc;
char buff[16];
int iCol;
lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
lvc.pszText = buff;
for(iCol = 0; iCol < 3; iCol++) {
lvc.iSubItem = iCol;
switch(iCol) { case 0: strcpy(buff, "Date"); lvc.fmt LVCFMT_LEFT; lvc.cx 100; break; case 1: strcpy(buff, "Type"); lvc.fmt LVCFMT_CENTER; lvc.cx 50; break; case 2: strcpy(buff, "Montant"); lvc.fmt LVCFMT_RIGHT; lvc.cx 120; break;
}
ListView_InsertColumn(hlv, iCol, &lvc);
}
}

if(!Meilleur("Joky")) return ERREUR;<
Messages postés
688
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
2 juin 2006
1
tu devrai faire gaffe car ton prof doiit se balader sur ce site de temps a autre;

Ce serait con demain d'entendre :

"alors je suis naze?? et je matte des sites de boule??? attention mon garcon, on file du mauvais coton !"

lol

Sinon, ben je crois que Joky a majestueusement clos le sujet;

@+;
satellite34

http://www.rootscommunity.com/</FON< body>
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
Non pas moi !
BruNews lol
Mais c'est vrai ça serait pas mal pour l'histoire du prof qui se ballade ici :D

ça me fait rappeler au lycée quand un pote à été convoqué parce que les profs s'étaient vus sur un skyblog lol

if(!Meilleur("Joky")) return ERREUR;<
Messages postés
29
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
8 février 2007

Il ne me reconnaitra pas, enfin j'espère :) mais il reste quand même assez cool (on se rattrape :p) j'explorerai ton code ce week end. Merci en tout cas pour ta réponse !
Messages postés
29
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
8 février 2007

Alors j'ai finalement strictement rien compris au code que tu as posté. Si tu pouvais me faire une petite traduc de ce que ca veut dire et à quoi ca correspond.

Merci
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
HWND hlv; //Handle de la list view

void __stdcall InitLVColumns() //Fonction pour ajouter des colonnes
{
LVCOLUMN lvc; //Structure de colonne dans listview
char buff[16]; //Buffer qui contiendra le texte
int iCol; //Numéro de colonne
lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM; //Masque de la colonne ( voir msdn )
lvc.pszText = buff; //Text de la colonne pointe sur le buffer
for(iCol = 0; iCol < 3; iCol++) //Répeté 3 fois
{
lvc.iSubItem = iCol; //c'est clair ça
switch(iCol) //Selon le numéro de la colonne
{
case 0: //Colonne n° 0
strcpy(buff, "Date"); //On la nomme Date
lvc.fmt = LVCFMT_LEFT; //Colonne à gauche lvc.cx 100; //Largeur 100
break;

case 1: //Colonne 1
strcpy(buff, "Type"); //On la nomme Type
lvc.fmt = LVCFMT_CENTER; //Au milieu lvc.cx 50; //Largeur 50
break;
//etc...
case 2:
strcpy(buff, "Montant");
lvc.fmt = LVCFMT_RIGHT;
lvc.cx = 120;
break;
}
//Insérer les colonnes dans la listview.
ListView_InsertColumn(hlv, iCol, &lvc);
}
}

C'est clair :(
if(!Meilleur("Joky")) return ERREUR;<
Messages postés
29
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
8 février 2007

NikeL merci beaucoup
Messages postés
29
Date d'inscription
samedi 1 novembre 2003
Statut
Membre
Dernière intervention
8 février 2007

En fait, je viens de comprendre pourquoi je galerai avec ce code, car il me met pratiquement 1 erreur par ligne c'est qu'en fait je suis sous dotnet :/
Alors j'ai rechercher finalement sur msdn, j'ai réussi a ajouter des items par ligne mais pas dans les colonnes, j'ai beau cherché j'ai pas trouvé. Si quelqu'un pouvait me dire comment ajouter des elements dans une colonne .. en DOTNET :p