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




Вниз

Как на АПИ создать всплывающее меню (popup) 


Yaroslav   (2001-10-31 13:17) [0]

Подскажите, желательно примером, как на АПИ создать всплывающее меню (popup) а то в хэлпе все так туго написано - куча параметров, которые надо задавать интуитивно-непонятным способом =)
Заранее спасибо



absent   (2001-11-01 06:14) [1]

Насчет параметров там по-моему все прозрачно:
можно так

var
hMenu: hWnd;
...
hMenu:= CreatePopupMenu;
AppendMenu(hMenu, MF_STRING, 101, "Пункт меню 1");
AppendMenu(hMenu, MF_STRING, 102, "Пункт меню 2");
// 101 и 102 - идентификаторы пунктов, которые ловят в WindowProc с
// сообщением WM_COMMAND.
Показ меню примерно так:
TrackPopupMenu(hMenu, TPM_LEFTALIGN,
LoWord(GetMessagePos), HiWord(GetMessagePos),
0, hMainWnd, nil);
// hMainWnd - хэндл основного окна
// только не забыть во время закрытия программы сделать
if hMenu <> 0 then DestroyMenu(hMenu);

Лучше конечно эти менюшки запихать в ресурсы...



absent   (2001-11-01 06:19) [2]

Да, вместо hMenu лучше поставить другое имя :)



Evgeny   (2001-11-01 06:59) [3]

Можно менюшку заранее описать в RC файле (если она конечно не динамическая) и вызывать как указано выше.

1000 MENU
BEGIN
POPUP ""
BEGIN
MENUITEM "&New\tF2", ID_NEW
MENUITEM SEPARATOR
MENUITEM "&Hi score...\tF4", ID_HI
MENUITEM "BackGround...\tF9", ID_BACK, GRAYED | INACTIVE
MENUITEM "&Pause\tPause", ID_PAUSE
MENUITEM "&About..\tF1", ID_ABOUT
MENUITEM SEPARATOR
MENUITEM "&Exit", ID_EXIT
END
END




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




Наверх






Память: 0.75 MB
Время: 0.031 c
3-21972           Wetnose               2001-12-06 08:30  2002.01.08  
FIBs+ & Generators


3-21933           pov                   2001-11-26 12:19  2002.01.08  
Подскажите самый простой способ регистрации BDE


3-21981           Termik                2001-12-06 08:22  2002.01.08  
Про ключевые поля и IDENTITY


14-22379          Феликс                2001-11-05 19:54  2002.01.08  
Покажи? - А может не надо? -Покажи тебе говорят!


3-21973           Zav                   2001-12-06 10:55  2002.01.08  
Компонент DBNavigator