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.4.3 - Нарисованные пользователем меню и сообщение WM_DRAWITEM / Меню. / Win32 API

11.18.4.3 - Нарисованные пользователем меню и сообщение WM_DRAWITEM

Всякий раз, когда пункт должен быть прорисован (например, когда он первоначально отображается или когда пользователь выбирается его), Windows отправляет сообщение WM_DRAWITEM оконной процедуре окна владельца меню. Это сообщение содержит указатель на структуру DRAWITEMSTRUCT содержащую информацию о пункте, включая данные о пункте, которые прикладная программа, возможно, присвоила ему. Кроме того, DRAWITEMSTRUCT содержит флажки, которые обозначают состояние пункта (типа того, является ли он недоступным или выбираемым с отметкой галочкой), а также ограничительный прямоугольник и контекст устройства, которые прикладная программа использует, чтобы рисовать пункт.

Прикладная программа должна делать следующее при обработке сообщения WM_DRAWITEM:

  1. Установить тип рисунка, который является необходимым. Чтобы сделать это, проверьте член itemAction структуры DRAWITEMSTRUCT.
  2. Нарисовать соответствующий пункт меню, используя ограничительный прямоугольник и контекст устройства, полученный из структуры DRAWITEMSTRUCT. Прикладная программа должна рисовать только внутри ограничительного прямоугольника. По причинам производительности, Windows не обрезает части изображения, которые прорисованы снаружи прямоугольника.
  3. Восстановить все объекты GDI, выбранные для пунктов меню в контексте устройства.

Если пользователь выбирает пункт меню, Windows устанавливает член itemAction структуры DRAWITEMSTRUCT в значение ODA_SELECT и устанавливает значение ODS_SELECTED в элементе itemState. Это - команда вызова подпрограммы приложения, которая перерисует пункт меню, чтобы указать, что он выбран.


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