Accueil > Forum > > > > Récupérer le message CB_SETCURSEL
Récupérer le message CB_SETCURSEL
lundi 10 février 2003 à 11:49:35 |
Récupérer le message CB_SETCURSEL

vow
|
Bonjour, je travaille tjs sur Visual C++ 6 en langage C J'ai une fenêtre avec 2 combo-box et une case à cocher. Le premier peut changer ou pas le second suivant la valeur. Le second peut cocher automatiquement la case suivant sa valeur. Lorsque je récupère le message CBN_SELCHANGE du 2eme CB, il n'y a aucun problème pour cocher ou non. Par contre, je n'arrive pas à récupérer le message CB_SETCURSEL... (le CBN_SELCHANGE n'est pas envoyé lorsqu'on envoie un message CB_SETCURSEL) Voici une partie de mon code : BOOL CALLBACK PRSMaFenetreDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) {
switch (message) { // du code mais rien d'important pour la suite
case WM_COMMAND: switch(LOWORD(wParam)) { case ID_CB1: if (HIWORD(wParam) == CBN_SELCHANGE) { if (GetDlgItemText(hDlg, ID_ASS_ALIAS, szBuff, sizeof(szBuff)) != 0) {
// Ca passe bien tout ce code
if (strstr(strupr(szBuff), "XXX") == 0) SendDlgItemMessage(hDlg, ID_CB2, CB_SETCURSEL, 3, 0L); if (strstr(strupr(szBuff), "YYY") == 0) SendDlgItemMessage(hDlg, ID_CB2, CB_SETCURSEL, 1, 0L); } } break;
case ID_CB2: // C'est ici que je veux récuperer le CB_SETCURSEL aussi if (HIWORD(wParam) == CBN_SELCHANGE) { i = (int) SendDlgItemMessage(hDlg, ID_CB2, CB_GETCURSEL, 0, 0L); if (i == 1 || i == 4) CheckDlgButton(hDlg, ID_CHECKBOX1, BST_CHECKED); } break; } break; }
}
|
Comment récupérer ce message CB_SETCURSEL, je pense avoir tout essayer mais rien concluant ? Merci d'avance. @++ PS : J'ai trouvé un moyen en lançant le message CBN_SELCHANGE après CB_SETCURSEL mais je n'aime pas trop cette solution... SendMessage(hDlg, WM_COMMAND, MAKELONG(ID_CB2, CBN_SELCHANGE), (LPARAM)hDlg);
| ~~~~ Vow ~~~~
|
|
lundi 10 février 2003 à 12:34:32 |
Re : Récupérer le message CB_SETCURSEL

BruNews
|
Salut, CB_SETCURSEL ne se recupere pas. Il est envoye par TON code. CBN_SELCHANGE est recuperable SI intervention user. Donc a toi de completer le code sous CB_SETCURSEL pour completer affichage ou autre. Si tu as, ce que je pense et conseille, deja mis le code dans la recup de CBN_SELCHANGE alors il te suffit d'un: PostMessage(hParent, WM_COMMAND, MAKELONG(idCmb,CBN_SELCHANGE), (long) hcmb); ciao... ------------------------------- Réponse au message : ------------------------------- > Bonjour, > > je travaille tjs sur Visual C++ 6 en langage C > > J'ai une fenêtre avec 2 combo-box et une case à cocher. > Le premier peut changer ou pas le second suivant la valeur. > Le second peut cocher automatiquement la case suivant sa valeur. > Lorsque je récupère le message CBN_SELCHANGE du 2eme CB, il n'y a aucun problème pour cocher ou non. > Par contre, je n'arrive pas à récupérer le message CB_SETCURSEL... > (le CBN_SELCHANGE n'est pas envoyé lorsqu'on envoie un message CB_SETCURSEL) > > Voici une partie de mon code : > BOOL CALLBACK PRSMaFenetreDlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) > { > > switch (message) > { > // du code mais rien d'important pour la suite > > case WM_COMMAND: > switch(LOWORD(wParam)) > { > case ID_CB1: > if (HIWORD(wParam) == CBN_SELCHANGE) > { > if (GetDlgItemText(hDlg, ID_ASS_ALIAS, szBuff, sizeof(szBuff)) != 0) > { > > // Ca passe bien tout ce code > > if (strstr(strupr(szBuff), "XXX") == 0) > SendDlgItemMessage(hDlg, ID_CB2, CB_SETCURSEL, 3, 0L); > if (strstr(strupr(szBuff), "YYY") == 0) > SendDlgItemMessage(hDlg, ID_CB2, CB_SETCURSEL, 1, 0L); > } > } > break; > > case ID_CB2: > // C'est ici que je veux récuperer le CB_SETCURSEL aussi > if (HIWORD(wParam) == CBN_SELCHANGE) > { > i = (int) SendDlgItemMessage(hDlg, ID_CB2, CB_GETCURSEL, 0, 0L); > if (i == 1 || i == 4) > CheckDlgButton(hDlg, ID_CHECKBOX1, BST_CHECKED); > } > break; > } > break; > } > > } > |
> > Comment récupérer ce message CB_SETCURSEL, je pense avoir tout essayer mais rien concluant ? > Merci d'avance. > @++ > > PS : J'ai trouvé un moyen en lançant le message CBN_SELCHANGE après CB_SETCURSEL mais je n'aime pas trop cette solution... > > SendMessage(hDlg, WM_COMMAND, MAKELONG(ID_CB2, CBN_SELCHANGE), (LPARAM)hDlg); > |
> > > ~~~~ Vow ~~~~
|
|
lundi 10 février 2003 à 19:32:03 |
Re : Récupérer le message CB_SETCURSEL

vow
|
C'est bien ce que j'ai écrit dans mon PS.......  Merci quand même ~~~~ Vow ~~~~------------------------------- Réponse au message : ------------------------------- > Salut, > CB_SETCURSEL ne se recupere pas. Il est envoye par TON code. CBN_SELCHANGE est recuperable SI intervention user. Donc a toi de completer le code sous CB_SETCURSEL pour completer affichage ou autre. Si tu as, ce que je pense et conseille, deja mis le code dans la recup de CBN_SELCHANGE alors il te suffit d'un: > PostMessage(hParent, WM_COMMAND, > MAKELONG(idCmb,CBN_SELCHANGE), > (long) hcmb); > ciao... > > ------------------------------- > Réponse au message : > ------------------------------- > > PS : J'ai trouvé un moyen en lançant le message CBN_SELCHANGE après CB_SETCURSEL mais je n'aime pas trop cette solution... > > > > SendMessage(hDlg, WM_COMMAND, MAKELONG(ID_CB2, CBN_SELCHANGE), (LPARAM)hDlg); > >
|
|
lundi 10 février 2003 à 19:35:29 |
Re : Récupérer le message CB_SETCURSEL

BruNews
|
oui mais fais gaffe, le aeme param est le hcmb et NON hdlg. ciao... ------------------------------- Réponse au message : ------------------------------- > C'est bien ce que j'ai écrit dans mon PS.......  > Merci quand même  > > ~~~~ Vow ~~~~> > > ------------------------------- > Réponse au message : > ------------------------------- > > > Salut, > > CB_SETCURSEL ne se recupere pas. Il est envoye par TON code. CBN_SELCHANGE est recuperable SI intervention user. Donc a toi de completer le code sous CB_SETCURSEL pour completer affichage ou autre. Si tu as, ce que je pense et conseille, deja mis le code dans la recup de CBN_SELCHANGE alors il te suffit d'un: > > PostMessage(hParent, WM_COMMAND, > > MAKELONG(idCmb,CBN_SELCHANGE), > > (long) hcmb); > > ciao... > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > PS : J'ai trouvé un moyen en lançant le message CBN_SELCHANGE après CB_SETCURSEL mais je n'aime pas trop cette solution... > > > > > > SendMessage(hDlg, WM_COMMAND, MAKELONG(ID_CB2, CBN_SELCHANGE), (LPARAM)hDlg); > > > >
|
|
mardi 11 février 2003 à 09:08:54 |
Re : Récupérer le message CB_SETCURSEL

vow
|
Comment on l'a ce hCmb ?
~~~~ Vow ~~~~
------------------------------- Réponse au message : -------------------------------
> oui mais fais gaffe, le aeme param est le hcmb et NON hdlg. > ciao... >
|
|
mardi 11 février 2003 à 09:43:13 |
Re : Récupérer le message CB_SETCURSEL

BruNews
|
Salut, PostMessage(hdlg, WM_COMMAND, MAKELONG(idCmb,CBN_SELCHANGE), (long) GetDlgItem(hdlg,idCmb)); ciao...
------------------------------- Réponse au message : -------------------------------
> Comment on l'a ce hCmb ? > > ~~~~ Vow ~~~~ > > > ------------------------------- > Réponse au message : > ------------------------------- > > > oui mais fais gaffe, le aeme param est le hcmb et NON hdlg. > > ciao... > > >
|
|
mercredi 12 février 2003 à 10:05:24 |
Re : Récupérer le message CB_SETCURSEL

vow
|
Merci pour cette précision ~~~~ Vow ~~~~------------------------------- Réponse au message : ------------------------------- > Salut, > PostMessage(hdlg, WM_COMMAND, > MAKELONG(idCmb,CBN_SELCHANGE), > (long) GetDlgItem(hdlg,idCmb)); > ciao... > > > > ------------------------------- > Réponse au message : > ------------------------------- > > > Comment on l'a ce hCmb ? > > > > ~~~~ Vow ~~~~> > > > > > ------------------------------- > > Réponse au message : > > ------------------------------- > > > > > oui mais fais gaffe, le aeme param est le hcmb et NON hdlg. > > > ciao... > > > > > >
|
|
Cette discussion est classée dans : message, id, hdlg, cb, setcursel
Répondre à ce message
Sujets en rapport avec ce message
SendDlgItemMessage CB_SETITEMDATA et CB_GETITEMDATA [ par jderf ]
Pour faire simple, je remplis une ComboBox d'une boite de dialoque et remplis aussi l'itemData avec une chaîne. Je souhaite récupérer la chaine dans u
CheckMenuRadioItem [ par gabeuskadi ]
Bonjour, Je suis débutant en C++ et je voudrais savoir comment créer un menu où l'utilisateur peut cocher certaines options. Ce que je veux faire auss
probleme avec une boite de dialogue [ par anonyme_man_in_this_world ]
salut !! ça sera simpa si vous m'aidiez a corriger ce code ******************************************************************************* #
Cherchez l'erreur... [ par andrealphus ]
4ndr&@lphu$Voilà mon code :LRESULT CALLBACK dialogProc4(HWND hDlg, UINT Umess, WPARAM wParamD, LPARAM lParamD){ int m_IdTimer=0; // ID du
PARANORMAL ACTIVITY ??? [ par andrealphus ]
4ndr&@lphu$bien encore une fois voilà mon code définitif :LRESULT CALLBACK dialogProc4(HWND hDlg, UINT Umess, WPARAM wParamD, LPARAM lParamD){ int
[URGENT - AIDE SVP] Access Violation Bizarre... [ par DivXPVobD ]
Bonjour,Voici un bout de mon code :Effect=1;SetDlgItemText(hDlg, IDC_EFFET, "E\0");SendDlgItemMessage(hDlg, IDC_TYPE, CB_RESETCONTENT, NULL, NULL);Sen
terminer un thread? [ par leprov ]
salut a tous.bon voila le pb, jai une dialogbox avec un thread d'initialisation de cette dialogbox, et je voudrais dans certains cas interrompre bruta
MESSAGE MAP pour une combobox dans une toolbar [ par equimose ]
La grosse équimoze!!!!!!!Bonjour a tousLorsque je fais une modif sur la ComboBox de la ToolBar, il ne ce passe rien!!!voyez pourquoi : http://cppfranc
combo box api win 32 [ par lafolle24320 ]
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'initial
Problème de socket non bloquante [ par Rankin ]
Bonjour !Je travaille actuellement sur la réalisation d'un chat très sommaire en C. La solution que j'ai adoptée consiste, côté serveur, à avoir un ta
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante 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
Forum
MATLAB PROGRAMME MATLAB PROGRAMME par wahab1087
Cliquez pour lire la suite par wahab1087 RGB2GRAYRGB2GRAY par musa18
Cliquez pour lire la suite par musa18
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
|