C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 11.18.2.3 - Отображение на экране контекстного меню / Меню. / Win32 API

11.18.2.3 - Отображение на экране контекстного меню

Функция, приведенная в следующем примере, показывает на экране контекстное меню.

Прикладная программа включает в себя ресурс меню, идентифицированный строкой "ShortcutExample". Строка меню просто содержит название меню. Прикладная программа использует функцию TrackPopupMenu, чтобы показать на экране меню, связанное с этим пунктом меню. (Сама строка меню не отображается, потому что TrackPopupMenu требует дескриптора меню, подменю или контекстного меню.)

VOID APIENTRY DisplayContextMenu(HWND hwnd, POINT pt)
{
	HMENU hmenu;		// меню верхнего уровня
	HMENU hmenuTrackPopup;	// контекстное меню>

	// Загрузим ресурс меню.

	if ((hmenu = LoadMenu(hinst, "ShortcutExample")) == NULL)
		return;

	// TrackPopupMenu не может показать на экране 
	// строку меню, так как получен дескриптор 
	// первого контекстного меню

	hmenuTrackPopup = GetSubMenu(hmenu, 0);

	// Покажем контекстное меню. Отследим правую кнопку мыши.

	TrackPopupMenu(hmenuTrackPopup,
		TPM_LEFTALIGN | TPM_RIGHTBUTTON,
		pt.x, pt.y, 0, hwnd, NULL);

	// Разрушим меню.
	DestroyMenu(hmenu);
}

| |
Автор Владимир Соковиков.
[AD]