Ajouter du texte dans une LISTBOX ?

cs_kawito Messages postés 24 Date d'inscription dimanche 20 juillet 2003 Statut Membre Dernière intervention 13 décembre 2005 - 1 oct. 2003 à 23:14
cs_kawito Messages postés 24 Date d'inscription dimanche 20 juillet 2003 Statut Membre Dernière intervention 13 décembre 2005 - 5 oct. 2003 à 02:10
Bonjour,

j'aimerais savoir si il est possible d'ajouter du texte dans une LISTBOX.j'ai bien lu quelque part, qu'il n'est possible que de faire des selections ?

si c'est le cas a quoi sert LB_ADDSTRING ?

j'ai lu quelque part qu'il faut LBS_HASSTRINGS dans le style
pour pouvoir ajouter du texte a une LISTBOX.

j'ai bien testé ceci mais rien ne s'affiche dans ma boite de dialogue :
SendMessage(hDlg, (UINT)LB_ADDSTRING,(WPARAM) 0,(LPARAM) bufferTemp);

bref j'aimerais avoir une fenetre de dialogue comportant plusieurs colonnes ou je pourrais afficher des données
quel est le melleur dialog pour faire cela ?

ce que j'ai defini en ressource pour ma boite de dialogue
-----------------------------------------------------------------
LISTEDIALOG DIALOG DISCARDABLE 0, 0, 180, 150
CAPTION "Liste"
FONT 8, "MS Sans Serif"
BEGIN
LISTBOX IDC_LISTE_MACHINE,6,20,136,59,LBS_STANDARD | LBS_HASSTRINGS
PUSHBUTTON"Terminé",IDCANCEL,50,87,50,14,WS_GROUP
END
----------------------------------------------------------------

case WM_INITDIALOG:
char* bufferTemp = new char[20];
bufferTemp ="willy";

SendMessage(hDlg, (UINT)LB_ADDSTRING,(WPARAM) 0,(LPARAM) bufferTemp);
break;

merci pour votre aide.

6 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
1 oct. 2003 à 23:17
SendMessage(hDlg, LB_ADDSTRING,0,(LPARAM) bufferTemp);
va tres bien ainsi si bufferTemp est char*.
BruNews, ciao...
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
1 oct. 2003 à 23:18
RECTIF:
SendMessage(hLIST, LB_ADDSTRING,0,(LPARAM) bufferTemp);
hLIST et non hDlg bien entendu.
BruNews, ciao...
0
cs_Xaviou Messages postés 154 Date d'inscription dimanche 1 avril 2001 Statut Membre Dernière intervention 2 octobre 2009
1 oct. 2003 à 23:22
Une ListBox contient plusieurs données (une liste, quoi) que tu peux sélectionner.

le message LB_ADDSTRING sert à ajouter une entrée dans ta liste. Il ne faut pas l'envoyer à la fenêtre, mais à la ListBox :

HWND hList=GetDlgItem(hDlg,IDC_LISTE_MACHINE);
char * Txt="Entrée de liste";
SendMessage(hList,LB_ADDSTRING,0,(LPARAM)Txt);
0
cs_kawito Messages postés 24 Date d'inscription dimanche 20 juillet 2003 Statut Membre Dernière intervention 13 décembre 2005
1 oct. 2003 à 23:34
super ça marche , merci !
y avait bien un probleme avec le handle !

je voudrais pas abuser mais comment avoir plusieurs colonnes dans ma liste ?

kawito
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
2 oct. 2003 à 07:32
Soit tu formates ta chaine en colonnes avant de l'inserer pour simuler des colonnes et il te faudra pour cela mettre une font a largeur fixe, soit tu utilises une listview en style report.
BruNews, ciao...
0
cs_kawito Messages postés 24 Date d'inscription dimanche 20 juillet 2003 Statut Membre Dernière intervention 13 décembre 2005
5 oct. 2003 à 02:10
Merci j'ai fait des recherche sur listview et ça fonctionne

kawito
0
Rejoignez-nous