Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];

Вниз

popup menu with pure WinAPI   Найти похожие ветки 

 
tretmike   (2002-10-16 11:09) [0]

Добрый день, всем.

Подскажите, пожалуйста, существует ли и где можно найти класс по работе с popup-menu, использующий чистое WinAPI и не использующий VCL.

От него требуется поддержка вложенных подменю, а также возможность отрисовки иконок слева от названий пунктов.

Заранее большое спасибо за любую подсказку.
Михаил Третьяков.


 
Arcus   (2002-10-16 12:56) [1]

Насчет готового класса не могу сказать, но на чистом API это не очень сложная задача. Есть такая функция TrackPopupMenu, а к ней в комплекте CreatePopupMenu, LoadMenu, GetSubMenu и AppendMenu. Для иконок, кажется, SetMenuItemBitmaps - но увы, реально пользоваться не приходилось.
Пример

var Menu: HMenu;
...
Menu:= CreatePopupMenu;
AppendMenu(Menu, MF_STRING, cm_Edit, "&Edit");
AppendMenu(Menu, MF_STRING, cm_Test, "&Test");
...
if Test then
CheckMenuItem(Menu, cm_Test, MF_BYCOMMAND or MF_CHECKED);
...
TrackPopupMenu(Menu, tpm_LeftAlign or tpm_RightButton, X, Y, 0, WndHandle, nil);



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

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

Наверх




Память: 0.44 MB
Время: 0.006 c
3-92839
ev1972
2002-11-12 15:03
2002.11.28
Как просмотреть файл.frp в FastReport?


3-92887
ger
2002-11-11 10:15
2002.11.28
Ошибка при удалении


6-93173
kofman
2002-10-02 13:20
2002.11.28
Как добавит сой пункт в контекстное меню MSIE?


3-92919
Andy78
2002-11-11 15:14
2002.11.28
Ячейки DBGrid


14-93200
madcap
2002-11-10 02:44
2002.11.28
квадратичная и линейная интерполяции





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