Главная страница
    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.44 MB
Время: 0.008 c
7-37401
Keplin Sergey
2002-11-01 20:10
2003.01.13
Читать CD-ROM напрямую...


3-36966
Wowa-K
2002-12-18 14:52
2003.01.13
Нехватка памяти


3-36983
Paul777
2002-11-30 15:34
2003.01.13
Пару вопросов по сохранению информации из DataSet...


1-37185
SI-riuss
2002-12-29 22:27
2003.01.13
Загрузка текстового файла


3-36931
Карелин Артем
2002-12-17 14:36
2003.01.13
Ошибка 179





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