Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.01.13;
Скачать: [xml.tar.bz2];

Вниз

Popup меню из ресурса   Найти похожие ветки 

 
rhf   (2002-11-24 19:14) [0]

Как описать в ресурсе попап меню, чтобы потом загрузить его через LoadMenu и показывать с помощью TrackPopupMenu?

Есть вариант описать главное меню, а попап как одно из его выпадающих.
Ну и потом
MenuHandle:=LoadMenu(hInstance,"MyMenu");
MenuHandle:=GetSubMenu(MenuHandle,0);

Можно ли как то проще?


 
asmith   (2002-11-24 20:12) [1]

Можно проще:
var
menu : HMENU;
const
IDM_START = 20;
IDM_EXIT = 21;
IDM_ABOUT = 22;
...
menu := CreatePopupMenu();
AppendMenu(menu, MF_STRING, IDM_START, "Start");
AppendMenu(menu, MF_SEPARATOR, 0, nil);
AppendMenu(menu, MF_STRING, IDM_EXIT, "Exit");
AppendMenu(menu, MF_STRING, IDM_ABOUT, "About");



 
Evgeny   (2002-11-26 05:36) [2]

можно так:

const
ID_POPMENU = 1000;
ID_NEW = 1010;
ID_OPTION = 1020;
ID_SCORES = 1030;
ID_ABOUT = 1040;
ID_EXIT = 1050;

ID_POPMENU MENU
BEGIN
POPUP ""
BEGIN
MENUITEM "&New\tF2", ID_NEW
MENUITEM SEPARATOR
MENUITEM "Option\tF9", ID_OPTION
MENUITEM "&Hi score...\tF4", ID_SCORES
MENUITEM "&About..\tF1", ID_ABOUT
MENUITEM SEPARATOR
MENUITEM "&Exit", ID_EXIT
END
END

...

var
hMn : HMENU;
PopMenu : HMENU;

wm_create:
hMn := LoadMenu(hInstance, MAKEINTRESOURCE(ID_POPMENU));

WM_RBUTTONUP :
begin
Pt.x := LOWORD(lParam);
Pt.y := HIWORD(lParam);

PopMenu := GetSubMenu(hMn, 0);
ClientToScreen(Wnd, Pt);
TrackPopupMenu(PopMenu, TPM_LEFTALIGN or TPM_RIGHTBUTTON,
Pt.x, Pt.y, 0, Wnd, NIL);
end;




Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2003.01.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.009 c
3-36981
Vick
2002-12-18 14:42
2003.01.13
в TDBGridEh событие скроллинга


4-37448
Lony
2002-11-24 20:38
2003.01.13
CreateThread


7-37412
Ш-К
2002-10-07 04:28
2003.01.13
Как из под WIndows 9x/NT ловить прерывания?


14-37336
gsu
2002-12-23 13:07
2003.01.13
Новый год


3-36924
13-ый
2002-12-17 10:42
2003.01.13
Деревья на основе БД





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский