begin process at 2012 05 28 15:29:22
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Changement de sélection dans une ListCtrl


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Changement de sélection dans une ListCtrl

mardi 22 janvier 2002 à 15:10:30 | Changement de sélection dans une ListCtrl

nunette

Sous Visual C++, comment savoir que la sélection a changé dans une ListControl, je ne trouve aucun événement pour cela. Comment récupérer l'item qui a été sélectionné, vu qu'en plus c'est une liste simple sélection.
Aidez moi merci
mercredi 23 janvier 2002 à 00:34:08 | Re : Changement de sélection dans une ListCtrl

NitRic_

C'est pas compliquer! Clique droit sur t'as liste et Events, ensuite dans la liste de gauche il y à LBN_SELCHANGE pour sélection change, tu l'ajoute en double-cliquant sur LBN_SELCHANGE et ensuite clique sur OK et double-clique sur ton contrôle liste et voilà! Chaque fois que l'utilisateur va sélectionner un nouvelle item cette event va être appeler, pour récupérer l'item sélectionner voilà:

/* Sans les CString */
int index;
int len;
char *buf;

index = = SendDlgItemMessage(IDC_LIST1, LB_GETCURSEL, 0, 0);
if (index != LB_ERR)
{

len = SendDlgItemMessage(IDC_LIST1, LB_GETTEXTLEN, (WPARAM)index, 0);

if (len != LB_ERR)
{

buf = new char[(len+2)];
len = SendDlgItemMessage(IDC_LIST1, LB_GETTEXT, (WPARAM)index, (LPARAM)(LPCTSTR)buf);

if (len != LB_ERR)
{

MessageBox(buf, "Voici l'item sélectionner", MB_OK);

}

delete [] buf;

}

}


/* Avec les CString */

int index;
CString cbuf;

index = SendDlgItemMessage(IDC_LIST1, LB_GETCURSEL, 0, 0);

if (index != LB_ERR)
{

index = SendDlgItemMessage(IDC_LIST1, LB_GETTEXT, (WPARAM)index, (LPARAM)(LPCTSTR)cbuf);

if (index != LB_ERR)
{

MessageBox(cbuf.GetBuffer(0), "Voici l'item sélectionner", MB_OK);
cbuf.Empty();

}

}


Désoler si y'a des tites erreurs, je me suis relit et ca l'aire correct, tu testeras!


NitRic28@Hotmail.com


-------------------------------
Réponse au message :
-------------------------------

Sous Visual C++, comment savoir que la sélection a changé dans une ListControl, je ne trouve aucun événement pour cela. Comment récupérer l'item qui a été sélectionné, vu qu'en plus c'est une liste simple sélection.
Aidez moi merci
mercredi 23 janvier 2002 à 09:32:37 | Re : Changement de sélection dans une ListCtrl

nunette

Sauf que c'est pas une ListBox mais une ListControl et donc il n'existe pas de message du type LBN_SELCHANGE.



-------------------------------
Réponse au message :
-------------------------------

C'est pas compliquer! Clique droit sur t'as liste et Events, ensuite dans la liste de gauche il y à LBN_SELCHANGE pour sélection change, tu l'ajoute en double-cliquant sur LBN_SELCHANGE et ensuite clique sur OK et double-clique sur ton contrôle liste et voilà! Chaque fois que l'utilisateur va sélectionner un nouvelle item cette event va être appeler, pour récupérer l'item sélectionner voilà:

/* Sans les CString */
int index;
int len;
char *buf;

index = = SendDlgItemMessage(IDC_LIST1, LB_GETCURSEL, 0, 0);
if (index != LB_ERR)
{

len = SendDlgItemMessage(IDC_LIST1, LB_GETTEXTLEN, (WPARAM)index, 0);

if (len != LB_ERR)
{

buf = new char[(len+2)];
len = SendDlgItemMessage(IDC_LIST1, LB_GETTEXT, (WPARAM)index, (LPARAM)(LPCTSTR)buf);

if (len != LB_ERR)
{

MessageBox(buf, "Voici l'item sélectionner", MB_OK);

}

delete [] buf;

}

}


/* Avec les CString */

int index;
CString cbuf;

index = SendDlgItemMessage(IDC_LIST1, LB_GETCURSEL, 0, 0);

if (index != LB_ERR)
{

index = SendDlgItemMessage(IDC_LIST1, LB_GETTEXT, (WPARAM)index, (LPARAM)(LPCTSTR)cbuf);

if (index != LB_ERR)
{

MessageBox(cbuf.GetBuffer(0), "Voici l'item sélectionner", MB_OK);
cbuf.Empty();

}

}


Désoler si y'a des tites erreurs, je me suis relit et ca l'aire correct, tu testeras!


NitRic28@Hotmail.com


-------------------------------
Réponse au message :
-------------------------------

Sous Visual C++, comment savoir que la sélection a changé dans une ListControl, je ne trouve aucun événement pour cela. Comment récupérer l'item qui a été sélectionné, vu qu'en plus c'est une liste simple sélection.
Aidez moi merci

mercredi 23 janvier 2002 à 18:27:23 | Re : Changement de sélection dans une ListCtrl

NitRic_

Désoler j'me suis tromper :| mais avec les ListControl ya le message NM_CLICK et pour récupérer l'item sélectionner tu peux regarder du coter de LVM_GETITEMTEXT


NitRic28@Hotmail.com



-------------------------------
Réponse au message :
-------------------------------

Sauf que c'est pas une ListBox mais une ListControl et donc il n'existe pas de message du type LBN_SELCHANGE.



-------------------------------
Réponse au message :
-------------------------------

C'est pas compliquer! Clique droit sur t'as liste et Events, ensuite dans la liste de gauche il y à LBN_SELCHANGE pour sélection change, tu l'ajoute en double-cliquant sur LBN_SELCHANGE et ensuite clique sur OK et double-clique sur ton contrôle liste et voilà! Chaque fois que l'utilisateur va sélectionner un nouvelle item cette event va être appeler, pour récupérer l'item sélectionner voilà:

/* Sans les CString */
int index;
int len;
char *buf;

index = = SendDlgItemMessage(IDC_LIST1, LB_GETCURSEL, 0, 0);
if (index != LB_ERR)
{

len = SendDlgItemMessage(IDC_LIST1, LB_GETTEXTLEN, (WPARAM)index, 0);

if (len != LB_ERR)
{

buf = new char[(len+2)];
len = SendDlgItemMessage(IDC_LIST1, LB_GETTEXT, (WPARAM)index, (LPARAM)(LPCTSTR)buf);

if (len != LB_ERR)
{

MessageBox(buf, "Voici l'item sélectionner", MB_OK);

}

delete [] buf;

}

}


/* Avec les CString */

int index;
CString cbuf;

index = SendDlgItemMessage(IDC_LIST1, LB_GETCURSEL, 0, 0);

if (index != LB_ERR)
{

index = SendDlgItemMessage(IDC_LIST1, LB_GETTEXT, (WPARAM)index, (LPARAM)(LPCTSTR)cbuf);

if (index != LB_ERR)
{

MessageBox(cbuf.GetBuffer(0), "Voici l'item sélectionner", MB_OK);
cbuf.Empty();

}

}


Désoler si y'a des tites erreurs, je me suis relit et ca l'aire correct, tu testeras!


NitRic28@Hotmail.com


-------------------------------
Réponse au message :
-------------------------------

Sous Visual C++, comment savoir que la sélection a changé dans une ListControl, je ne trouve aucun événement pour cela. Comment récupérer l'item qui a été sélectionné, vu qu'en plus c'est une liste simple sélection.
Aidez moi merci




Cette discussion est classée dans : sélection, changement, listctrl


Répondre à ce message

Sujets en rapport avec ce message

visual c++:récupérer une sélection dans une listctrl [ par annplop ] Bonjour,j'ai une liste contrôle avec une simple sélection,la question a déjà été posé , mais j'aurais besoin de plus de précision sur l'évenement à ut Changement de police sous VC++ [ par KikiFrancky ] J'en peux plus.J'ai beau gratter tant ke je peux pour trouver la solution,je n'y arrive pas.Je cherche à modifier la police d'affichage en C sous Visu TreeView Sélection [ par bergou ] Lorque l'on click sur une branche d'un TreeView Comment fait on pour retrouver le texte du TreeView sélectionné et le niveau ?(sans d'option TreeView changement IP [ par Gendo ] Salut a tous, j'aimerais simplement savoir s'il y a un moyen "simple" sous visual C++ 6.0 pour changer l'ip d'une carte réseau.J'ai bien essayé de pas Changement CRichEditCtrl [ par garslouche ] Salut,je fait une appli SDI avec une CRichEditView. Je voudrais déclencher une méthode lorsque le CRichEditCtrl est modifié (frappe de l'utilisateur, Recherche et changement [ par davidbaum ] Bonjour je desire rechercher une chaine de caractère comprise entre la chaine "=" et le caractère" et la changer avec une variable predefinit.Merci changement de base OpenGL (Matrices) [ par cppdupdup34 ] ami coder j'ai une requete !!je cherche desesperement a faire ce qu'openGL fait sans l'ecrirechanger de base de facon successivequand on fait un glRot Changement de fond d'écran sans redémarrage et sans bug après changement de résolution. [ par BouiB1 ] Je me suis moi aussi amusé a faire un ch'ti prog de chgt de fond d'écran. Voici un extrait de mon source cpp : SystemParametersInfo(SPI_SETDESKWALLPAP Language de sélection de Visual C++ ??? [ par CodeMercury ] Salut,Je posséde Visual C++ 6, mais contrairement à Visual Basic 6 que je posséde en français, Visual C++ 6 est en anglais.Existe-t-il un programme qu Changement d'un entier en chaine de caractères. [ par dardarmotus ] dardarmotus Bonjour à tous existe -til une fonction en C qui permet de transormer un entier en chaine de caractère ?exemple int i = 102;char chaine[]=


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,172 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales