lafolle24320
Messages postés406Date d'inscriptionsamedi 26 mars 2005StatutMembreDernière intervention29 juin 2009
-
16 nov. 2006 à 08:38
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 2009
-
16 nov. 2006 à 13:15
Bonjour, je tente de faire fonctionner une combox mais je n'y parviens pas...
Voici comment je procède :
j'ai une variable globale UINT Jour
j'initialise Jour = ID_J1 (correspond au premier jour)
ensuite dans la fonction de ma boite de dialogue
case WM_INITDIALOG:
SendDlgItemMessage(hdlg, IDC_CJOUR, CB_ADDSTRING, 0, (LONG)"1");
SendDlgItemMessage(hdlg, IDC_CJOUR, CB_ADDSTRING, 0, (LONG)"2");
SendDlgItemMessage(hdlg, IDC_CJOUR, CB_ADDSTRING, 0, (LONG)"3");
SendDlgItemMessage(hdlg, IDC_CJOUR, CB_ADDSTRING, 0, (LONG)"4");
SendDlgItemMessage(hdlg, IDC_CJOUR, CB_ADDSTRING, 0, (LONG)"5");
SendDlgItemMessage(hdlg, IDC_CJOUR, CB_ADDSTRING, 0, (LONG)"6");
SendDlgItemMessage(hdlg, IDC_CJOUR, CB_SETCURSEL, Jour, 0);
qu'est ce que j'ai oublié de faire -> sachant qu'en fait il ne m'affiche que la première valeur?
cs_louis14
Messages postés793Date d'inscriptionmardi 8 juillet 2003StatutMembreDernière intervention10 février 20218 16 nov. 2006 à 12:02
ce que j'ai remarqué, c'est qu'en mettant une hauteur plus grande que nécessaire, il y a en premier lieu une adaptation de la hauteru , car le paramètre est la hauteur maximale et non la hauteur définitive si la liste est plus petite
cs_louis14
Messages postés793Date d'inscriptionmardi 8 juillet 2003StatutMembreDernière intervention10 février 20218 16 nov. 2006 à 08:55
je ne vois de suite, mais lorsque je programme sous VC++, dans l'éditeur de la boite de dialogue, je dimensionne la combobox mais aussi la dropdown window ( si je ne le fait pas, je ne vois que la première donnée comme toi). je ne sais pas s'il y a un message pour cela, mais je pense qu'il voir de ce côté là. je viens de chercher le message, il s'agit de CB_ SETDROPPEDWIDTH .
cs_louis14
Messages postés793Date d'inscriptionmardi 8 juillet 2003StatutMembreDernière intervention10 février 20218 16 nov. 2006 à 09:26
il n'y a pas que l'option dropdown mais il faut envoyer le message pour donner la dimension max de la fenêtre dropdown. Fais une recherche sur internet pour voir le paramètre à passer.
cs_louis14
Messages postés793Date d'inscriptionmardi 8 juillet 2003StatutMembreDernière intervention10 février 20218 16 nov. 2006 à 09:54
je viens de modifier une combobox dans vc++ et j'ai édité le fichier RC. dans les dimensions de la combobox c'est le dernier paramètre qui conditionne la hauteur de la dropdown window.
CB_COMBOBOX_XXX,64,28,95,40.....=> ici 40 est la hauteur donc modifie ce paramètre
cs_louis14
Messages postés793Date d'inscriptionmardi 8 juillet 2003StatutMembreDernière intervention10 février 20218 16 nov. 2006 à 10:29
il faut se fixer une limite sinon tu vas dépasser ton écran. Si le tableau est assez petit, compte 12 pour un élément et multiplie par le nombre d'éléments et fixe la taille par le message CB_SETDROPDOWNWIDTH
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 20092 16 nov. 2006 à 11:29
J'ai beau cherché mais je trouve pas sur la msdn !
Avec google, j'ai juste trouvé un sujet d'un forum qui confirme ce que je pensais !
En plus width en anglais ça signifie largeur ! Ca veut tout dire.
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"
yoyo269
Messages postés1403Date d'inscriptionlundi 23 février 2004StatutMembreDernière intervention11 janvier 20092 16 nov. 2006 à 13:15
C'est exactement ça louis14 !
Pour augmenter la taille de la liste à l'affichage, il faut augmenter la hauteur de ta combobox à la création directement (c'est plus simple).
YOYO, @+.
"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"