Главная страница
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.47 MB
Время: 0.015 c
1-37045
Jiura
2002-12-28 19:01
2003.01.13
QReport


1-37153
Ops
2002-12-29 16:52
2003.01.13
Текст в Memo разным цветом


1-37017
Vampirus
2003-01-01 21:30
2003.01.13
Список поддиректорий и файлов в некоторой директории


1-37078
Sergunja
2002-12-28 23:13
2003.01.13
Двоичный файл


14-37359
angelant
2002-12-25 06:56
2003.01.13
Нулевый диск возраждаясь дает.... Чудеса... И ...