2013-06-25 3 views
1

Я только начал C++, и я искал в Интернете способы создания элемента меню радио, но Я довольно смущен.Как создать пункт меню радио в C++?

Предпочитаемый пример поможет мне разобраться.

Итак, я хочу, чтобы иметь возможность создать простой пункт меню радио, как это: http://i.imgur.com/7UrUtjS.png

, но я застрял на том, как создать пункт меню радио. До сих пор у меня есть это:

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) 
    { 
    int wmId, wmEvent; 
    HRESULT hr; 
    POINTER_INFO pointerInfo = {}; 

    HMENU hmenu = GetMenu(hWnd); 
    HMENU hChangeMenu = CreateMenu(); 
    HMENU hGesture = CreateMenu();  
    HMENU hPointer = CreateMenu();  


    UNREFERENCED_PARAMETER(hr); 

    if(changeAPI) 
    { 
     AppendMenu(hmenu, MF_POPUP, (UINT_PTR)hChangeMenu, L"API"); 


     **// I want this to be a radio menu item, all I know is the MF_POPUP** 
     AppendMenu(hChangeMenu, MF_POPUP, (UINT_PTR)hGesture, L"Gesture"); 
     AppendMenu(hChangeMenu, MF_POPUP, (UINT_PTR)hPointer, L"Pointer"); 
     AppendMenu(hChangeMenu, MF_POPUP, (UINT_PTR)hTouch, L"Touch"); 


     changeAPI = false; 

    } 
    //....other stuff.... 
+1

В C++ нет ничего похожего на радио-кнопку, C++ - это только сам язык. Однако в Windows есть радио-кнопка, и Windows предоставляет ее функциональность приложениям, использующим WinAPI. Если вы только начали делать C++, я бы предложил вам сначала создать консольные приложения. Когда вы чувствуете себя готовым к игре с графическими интерфейсами, я предлагаю вам использовать оболочку для WinAPI, чистая WinAPI - настоящая боль. Qt или MFC будут работать хорошо. – Marius

+0

Я настоятельно рекомендую не использовать WinAPI для оконной системы и использовать что-то более простое, как WxWidgets, Qt или Smart. –

+0

О, это то, что я действительно хотел спросить. – CodeDoctorJL

ответ

1

эфир «Радио» логическое поведение пунктов меню должны быть предоставлены вашим кодом. После того, как вы создали элементы меню, используйте ModifyMenu, чтобы добавить/удалить галочку или растровое изображение для соответствующих элементов.

+0

грустно, что WinAPI не предоставляет функцию радио, но ваш совет будет выполнять задание :) – CodeDoctorJL