Accueil > Forum > > > > [C+++ MFC] Combo Box
[C+++ MFC] Combo Box
vendredi 20 juillet 2007 à 12:47:12 |
[C+++ MFC] Combo Box

zanrek
|
Bonjour, voilà je fais face à un petit souci concernant les combo box. (Je n'ai en fait encore jamais utilisé ce type de contrôle). Donc j'ai placé une Combo box sur me boîte de dialogue CSetup que j'ai nommé IDC_COMBO_CATEGORY à laquelle j'ai associé une variable de type CComboBox: m_Combo_Category Je voudrais qu'à l'affichage de cete fenêtre, il y ait un certain nombre de lignes déjà remplies dans cette comboBox, et lorsque je clique sur un bouton, récupérer l'élément sélectionné. J'ai déjà essayé danc un premier lieu de faire m_Combo_Category.AddString ("ma chaine"); La compilation passe, mais des qu'il s'agit d'executer cette ligne (placée dans CSetup::CSetup (CWnd*pParent)), il me sort une erreur "debug assertion failed...". Quelle peut en être la cause? Celà vient-il d'une mauvaise utilisation de la variable CComboBox?
|
|
vendredi 20 juillet 2007 à 14:20:45 |
Re : [C+++ MFC] Combo Box

aardman
|
Réponse acceptée !
Salut,
Logiquement, j'aurais plutot mis le code d'initialisation du combo dans
le OnInitDialog(), car a mon avis au moment de l'appel du constructeur
de CSetup ta dialog n'est pas encore crée, et ton combobox aussi.
|
|
vendredi 20 juillet 2007 à 15:43:11 |
Re : [C+++ MFC] Combo Box

zanrek
|
Hum en fait c'est pas tant ce probleme là (en fait ce code je le mets juste apres l'initialisation des autres variables de la fenêtre....
Mon Csetup n'a pas de OnInitDialog, vu que ce n'est pas ma fenêtre principale...
En fait le souci c'est que je ne connais pas trop la façon de manipuer les Combo Box
|
|
vendredi 20 juillet 2007 à 16:15:49 |
Re : [C+++ MFC] Combo Box

aardman
|
Salut,
Oui ben c'est ce que je dis, au moment de l'appel du constructeur ton
combobox n'existe pas encore (je parle bien de la fenêtre windows, pas
de l'instance du CComboBox). Pour etre sur que le probleme vient bien
de la, tu peux rajouter un
ASSERT(::IsWindow(m_Combo_Category.GetSafeHwnd())) dans ton
constructeur, et voir si ca échoue en debug.
Pour le OnInitDialog(), doit forcement y avoir un moyen de le rajouter, mais la je ne peux pas t'aider.
|
|
vendredi 20 juillet 2007 à 16:23:59 |
Re : [C+++ MFC] Combo Box

zanrek
|
En effet, si je place ce code ailleurs (dans une fonction membre, par exemple, çà passe sans soucis... a ceci près que lq liste ne se déroule pas sur 5 ou 6 lignes, mais seulement sur une seule...
|
|
lundi 23 juillet 2007 à 10:09:58 |
Re : [C+++ MFC] Combo Box

zanrek
|
Bon nouvelle semaine, nouveaux prolèmes :-)
Donc j'ai créé ma combo Box , et les éléments de celle ci se mettent à jour lorsque j'appuie sur un bouton. Celle-ci se déroule normalement, bref dans la situation actuelle, tout est OK.
Maintenant, j'aimerais que cette combo box ne s'initialise aps lorsque j'appuie sur le bouton, mais directement lors de l'affichage de la fenêtre "Setup".
Seul souci, je ne peux pas le faire depuis CSetup::Csetup.
Voici les autres méthodes qui sont dispo dans ma classe :
DoDataExchange, GetMessageMap, GetThisMessageMap, OnClickedDelete, OnClickedOverwrite, OnCheckfile (ces 3 dernières méthodes sont des méthodes que j'ai cré pour les boutons).
voici le code que je souhaiterais mettre pour initialiser mon combo box.:
DWORD dwNumeroEmploye; CSTRING strNomEmploye; strNomEmploye = "Vincent Tim"; dwNumeroEmploye = 1;
int nIndex
CComboBox * pBox = (CComboBox *) GetDlgItem(IDC_COMBO_CATEGORY);
nIndex = pBox->AddString(strNomEmploye); pBox->SetItemData (nIndex,dwNumeroEmploye);
Voici aussi le code qui me sert à afficher ma fenêtre... c'est peut-être utile pour trouver une solution...
Csetup *psetup = new Csetup; if (psetup!=NULL) { BOOL ret = psetup-> Create(IDD_SETUP); if (!ret) AfxMessageBox ("erreur"); psetup->ShowWindow(SW_SHOW); }
|
|
lundi 23 juillet 2007 à 11:11:31 |
Re : [C+++ MFC] Combo Box

aardman
|
Réponse acceptée !
Salut,
Moi je reste sur mon OnInitDialog() de la semaine derniere ;)
C'est dans cette fonction que tu dois initialiser tout les controles de
ta dialog. D'apres msdn, OnInitDialog est une methode virtuelle qu'il
suffit d'implementer dans ta classe, au même titre que OnOK ou OnCancel.
http://msdn2.microsoft.com/en-us/library/fwz35s59(VS.71).aspx
|
|
lundi 23 juillet 2007 à 11:23:01 |
Re : [C+++ MFC] Combo Box

zanrek
|
Je vais essayer cette méethode... En fait à la base jou voulais utiliser un autre moyen , car je n'ai jamais implémenté OnInitDialog par moi même (c'est otujours lors de la création du projet que çà se faisait).
Je vais essayer de voir comment ils font dans MSDN.
Merci pour le lien!
|
|
lundi 23 juillet 2007 à 11:26:55 |
Re : [C+++ MFC] Combo Box

zanrek
|
Ah oui aussi: Où (ou plutôt quand) dois-je appeler cette fonction?
Dans Csetup::Csetup?
|
|
lundi 23 juillet 2007 à 12:10:23 |
Re : [C+++ MFC] Combo Box

aardman
|
Réponse acceptée !
Salut,
En général les methodes du style 'OnQuelqueChose' sont des réponses a
des evenement, donc tu n'a pas a les appeler, c'est la dialog qui les
appelera au bon moment.
|
|
Cette discussion est classée dans : type, box, combo, mfc, csetup
Répondre à ce message
Sujets en rapport avec ce message
pb COMBO-Box MFC [ par BarthOlivier ]
Bj,J'ai un petit souci avec le controle ComboBox...Lorsque je selectionne le controle et que je tappe du texte dedans en finissant par ENTER, apparame
Prob de combo avec MFC [ par perig ]
Bonjour,Voila je programme depuis pas mal de temps en C/C++ mais MFC je nage :(donc j'ai 2-3 questions!!!Je commence par la plus générale : - Avez vou
MFC: ouvrir une deuxieme dialogue box a partir d'une premiere [ par pidoumtimo ]
Bonjour a tous.Voila mon probleme.Je souhaiterais qu'un clik sur un bouton ouvre une deuxieme dialogue box, ensuite on rentre des données sur cette de
ajout d'éléments dans une combo box [ par mezaya ]
Bonjour, Mon probleme est que je n'arrive pas a ajouter des éléments dans une combo box. pourtant j'envoie bien un message CB_ADDSTRING comme il font
Combo box [ par CeNedra83 ]
Je programme en C++ Visual.NET 2003 avec des MFC. dans une boite de dialogue j'ai une combo box, et je ne sais pas comment la remplir. j'ai crée une v
[probleme de Vues MFC] [ par torNADoS ]
Salut,J ai deux vues ds ^mon programme 1 de type CReecordView et l autre de type CFormView, le probleme c ke qd je clique sur un bouton ds celle de t
Changer les couleurs dans un edit box (MFC application, visual c++) [ par wannalurn ]
SalutJ'ai un petit probleme; j'aimerais en effet changer la couleur de mes edit box dans mon dialog box; concretement, ce que je veux c'est que apres
[API | C++] Combo Box [ par keenrather ]
Bonjour à tous,Alors voila je travaille sous Visual C++ 6 et j'ai crée une boite de dialogue avec une combo box dans mes ressources.Et mon problème c'
MFC Help [ par torNADoS ]
Salut à tous, Voila mon programme est composé de 2 Formes (type FormView) dans chaqun j ai creer un bouton.Si je clique sur un bouton il m'affiche l'a
Boite de Dialog type : CFormView [ par BlueReaver ]
BonjourJe suis obligé de travailler avec les MFC pour mon projet et je souhaiterai faire apparaitre une boite de dialog pour y afficher des Histogramm
Livres en rapport
|
Derniers Blogs
JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|