Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 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



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

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

Наверх




Память: 0.44 MB
Время: 0.007 c
3-21942
Rev
2001-12-03 12:19
2002.01.08
Добрые люди помогите с хранимой процедурой.


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


4-22465
AKV
2001-11-02 10:44
2002.01.08
как определить handle окна над которым находится мышь


1-22016
Leviathan
2001-12-13 23:05
2002.01.08
Появление формы


1-22123
dimonf
2001-12-15 16:33
2002.01.08
Вопрос о





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