Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.13;
Скачать: CL | DM;

Вниз

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 вся ветка

Текущий архив: 2003.01.13;
Скачать: CL | DM;

Наверх




Память: 0.44 MB
Время: 0.007 c
14-37298
Shved
2002-12-23 00:14
2003.01.13
Такая странная проблема


3-36982
Che
2002-12-18 23:15
2003.01.13
SELECT


4-37472
Unknown user
2002-11-26 19:57
2003.01.13
Масштабирование текста


1-37077
Alexsandr (GEG)
2003-01-03 13:17
2003.01.13
StringGrid убрать выделение ячейки


1-37051
Brat-2
2003-01-02 21:34
2003.01.13
Str2Byte





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский