CheckMenuRadioItem

Résolu
gabeuskadi Messages postés 4 Date d'inscription mardi 16 novembre 2004 Statut Membre Dernière intervention 2 juin 2005 - 2 juin 2005 à 16:32
gabeuskadi Messages postés 4 Date d'inscription mardi 16 novembre 2004 Statut Membre Dernière intervention 2 juin 2005 - 2 juin 2005 à 17:06
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 aussi, c'est qu'à chaque fois, une seule de ces options soit cochées.

J'utilise donc la fonction CheckMenuRadioItem mais celle-ci me renvoie 0 (mauvais signe ça). Or quand j'utilise GetLastError(), je n'ai pas de message d'erreur de type ERROR ... donc je sais pas trop comment résoudre mon problème

Mon projet est un win32application. j'utilise MFC.
Voici la partie du code concernée :

BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
...
ON_COMMAND_RANGE(ID_VUE1, ID_VUE2, OnUpdateView)
...
END_MESSAGE_MAP()

...

void CMainFrame::OnUpdateView(UINT nID)
{
CMenu affichage ;
affichage.LoadMenu(IDR_MENU1) ;
affichage.CheckMenuRadioItem(ID_VUE1, ID_VUE2, nID, MF_BYCOMMAND);

DWORD dw = GetLastError();

}

Merci beaucoup à celle ou celui qui pourrait me répondre.
Salut

1 réponse

gabeuskadi Messages postés 4 Date d'inscription mardi 16 novembre 2004 Statut Membre Dernière intervention 2 juin 2005
2 juin 2005 à 17:06
c bon j'ai trouvé
dsl d'avoir fait perdre du temps à ceux qui m'ont lu

pour ceux qui auraient le même problème voici ma solution :

void CMainFrame::OnUpdateView(UINT nID)
{
CMenu* mmenu = GetMenu();
CMenu* submenu = mmenu->GetSubMenu(2); // en fait ici "2" correspond au numéro du sous-menu qui contient ID_VUE1 et ID_VUE2
submenu->CheckMenuRadioItem(ID_VUE1, ID_VUE2,nID, MF_BYCOMMAND);
}
3
Rejoignez-nous