Общие справочники по элементу управления

В этом разделе содержатся справочные сведения о элементах программирования, которые применяются к нескольким элементам управления, а не только к конкретному элементу управления. Существуют функции, макросы, сообщения, уведомления и структуры, которые поддерживают большинство элементов управления. Например, большинство элементов управления используют уведомления NM_HOVER для обработки щелчков мыши.

Общие сведения

Раздел Содержимое
Общие элементы управления Общие элементы управления — это набор окон, реализованных общей библиотекой элементов управления, которая является библиотекой DLL, включенной в операционную систему Windows.
Часто задаваемые вопросы о распространенных элементах управления В этой статье приведены ответы на некоторые распространенные вопросы об общих элементах управления.

Функции

Раздел Содержимое
DoReaderMode Включает режим чтения в окне.
DPA_Clone Дублирует динамический массив указателей (DPA).
DPA_Create Создает DPA.
DPA_CreateEx Создает DPA с помощью заданного размера и расположения кучи.
DPA_DeleteAllPtrs Удаляет все элементы из DPA и сжимает DPA соответствующим образом.
DPA_DeletePtr Удаляет элемент из DPA. DPA сжимается при необходимости, чтобы разместить удаленный элемент.
DPA_Destroy Освобождает динамический массив указателей (DPA).
DPA_DestroyCallback Вызывает pfnCB на каждом элементе DPA, а затем освобождает DPA.
DPA_EnumCallback Выполняет итерацию по массиву динамических указателей (DPA) и вызывает pfnCB для каждого элемента.
DPA_GetPtr Возвращает элемент из DPA.
DPA_GetPtrIndex Возвращает индекс соответствующего элемента, найденного в DPA.
DPA_GetSize Возвращает размер DPA.
DPA_Grow Изменяет количество указателей в DPA.
DPA_InsertPtr Вставляет новый элемент в указанное положение в DPA. При необходимости DPA расширяется для размещения нового элемента.
DPA_LoadStream Загружает DPA из потока, вызвав указанную функцию обратного вызова для чтения каждого элемента.
DPA_Merge Объединяет содержимое двух ЦП.
DPA_SaveStream Сохраняет DPA в поток, записывая заголовок, а затем вызывая указанную функцию обратного вызова для записи каждого элемента.
DPA_Search Находит элемент в DPA.
DPA_SetPtr Назначает значение элементу в DPA.
DPA_Sort Сортирует элементы в динамическом массиве указателей (DPA).
DrawShadowText Рисует текст с тенью.
DrawTextExPrivWrap Рисует форматированный текст в указанном прямоугольнике. Эта функция выполняет оболочку вызова в DrawTextEx.
DrawTextWrap Рисует форматированный текст в указанном прямоугольнике. Он форматирует текст в соответствии с указанным методом (расширяющие вкладки, оправдывающие символы, критические строки и т. д.). Эта функция упаковывает вызов в DrawText.
DSA_Clone Дублирует динамический массив структур (DSA).
DSA_Create Создает DSA.
DSA_DeleteAllItems Удаляет все элементы из DSA.
DSA_DeleteItem Удаляет элемент из DSA.
DSA_Destroy Освобождает DSA.
DSA_DestroyCallback Выполняет итерацию через DSA, вызывая указанную функцию обратного вызова для каждого элемента. После достижения конца массива dsA освобождается.
DSA_EnumCallback Выполняет итерацию по DSA и вызывает pfnCB для каждого элемента.
DSA_GetItem Возвращает элемент из DSA.
DSA_GetItemPtr Возвращает указатель на элемент из DSA.
DSA_GetSize Возвращает размер DSA.
DSA_InsertItem Вставляет новый элемент в DSA. При необходимости DSA расширяется для размещения нового элемента.
DSA_SetItem Задает содержимое элемента в DSA.
DSA_Sort Сортирует элементы в DSA.
ExtTextOutWrap Рисует текст с помощью выбранного в данный момент шрифта, цвета фона и цвета текста. При необходимости можно указать измерения, используемые для обрезки, непрозрачности или обоих. Эта функция выполняет оболочку вызова extTextOut.
GetEffectiveClientRect Вычисляет размеры прямоугольника в клиентской области, содержащей все указанные элементы управления.
GetMUILanguage Получает язык, используемый общими элементами управления для определенного процесса.
GetTextExtentPoint32Wrap Вычисляет ширину и высоту указанной строки текста. Эта функция выполняет оболочку вызова GetTextExtentPoint.
InitCommonControls Регистрирует и инициализирует некоторые распространенные классы окна управления. Эта функция является устаревшей. Новые приложения должны использовать функцию InitCommonControlsEx .
InitCommonControlsEx Регистрирует определенные общие классы элементов управления из библиотеки DLL общего элемента управления.
InitMUILanguage Позволяет приложению указывать язык для использования с общими элементами управления, отличающимися от системного языка.
LoadIconMetric Загружает указанный ресурс значка с помощью заданной клиентом системной метрики.
LoadIconWithScaleDown Загружает значок. Если значок не является стандартным, эта функция масштабирует более крупный образ, а не масштабирует меньшее изображение.
MirrorIcon Отменяет значки (зеркало), чтобы они отображались правильно в зеркало контексте устройства.
PFNDACOMPARE Определяет прототип функции сравнения, используемой DSA_Sort.
PFNDACOMPARECONST Определяет прототип функции сравнения, используемой DSA_Sort при сравнении элементов являются константными объектами.
PFNDAENUMCALLBACK Определяет прототип функции обратного вызова, используемой функциями DSA и DPA.
PFNDAENUMCALLBACKCONST Определяет прототип функции обратного вызова, используемой функциями DSA и DPA, когда элементы, участвующие в них, являются указателями на константные данные.
PFNDPACOMPARE Определяет прототип функции сравнения, используемой DPA_Sort и DPA_Search.
PFNDPACOMPARECONST Определяет прототип функции сравнения, используемой DPA_Sort или DPA_Search при сравнении элементов являются константными объектами.
PFNDPAENUMCALLBACK Определяет прототип функции обратного вызова, используемой DPA_EnumCallback.
PFNDPAMERGE Определяет прототип функции слияния, используемой DPA_Merge.
PFNDPAMERGECONST Определяет прототип функции слияния, используемой DPA_Merge с помощью константных значений.
PFNDPASTREAM Определяет прототип функции обратного вызова, используемой DPA_LoadStream и DPA_SaveStream.
PFNDSAENUMCALLBACK Определяет прототип функции обратного вызова, используемой DSA_DestroyCallback.
ЧитательScroll Определяемая приложением функция обратного вызова, используемая при перемещении указателя мыши в пределах части окна режима чтения, объявленного в качестве активной области прокрутки.
ShowHideMenuCtl Задает или удаляет проверка атрибута проверка элемента меню и отображает или скрывает соответствующий элемент управления. Функция добавляет знак проверка к указанному элементу меню, если он не имеет одного, а затем отображает соответствующий элемент управления. Если элемент меню уже имеет знак проверка, функция удаляет метку проверка и скрывает соответствующий элемент управления.
Str_GetPtr Копирует строку из одного буфера в другой.
Str_SetPtrW При необходимости задает ppszCurrent копию pszNew и освобождает предыдущее значение.
ПереводDispatch Используется клиентом функции DoReaderMode для перехвата и явного обработки сообщений Windows, предназначенных для области прокрутки окна режима чтения. Это определяемая приложением функция обратного вызова.

Макросы

Раздел Содержимое
DPA_AppendPtr Вставляет новый элемент в конец DPA.
DPA_FastDeleteLastPtr Удаляет последний указатель из DPA.
DPA_FastGetPtr Возвращает значение указанного указателя в DPA.
DPA_GetPtrCount Возвращает количество указателей в DPA.
DPA_GetPtrPtr Возвращает указатель на внутренний массив указателя DPA.
DPA_SetPtrCount Задает количество указателей в DPA.
DPA_SortedInsertPtr Вставляет новый элемент до или после указанного существующего элемента.
DSA_AppendItem Добавляет новый элемент в конец DSA.
DSA_GetItemCount Возвращает количество элементов в DSA.
FORWARD_WM_NOTIFY Отправляет или публикует сообщение WM_NOTIFY.
HANDLE_WM_NOTIFY Вызывает функцию, обрабатывающую сообщение WM_NOTIFY .
INDEXTOSTATEIMAGEMASK Подготавливает индекс изображения состояния, чтобы элемент управления представления дерева или элемента управления представлением списка можно использовать индекс для получения образа состояния для элемента.

Сообщения

Раздел Содержимое
CCM_DPISCALE Включает автоматическое масштабирование точек на дюйм (dpi) в элементах управления "Дерево-представление", элементов управления List-View, элементов управления ComboBoxEx, элементов управления "Заголовок", "Кнопки", "Панели инструментов", "Элементы управления анимацией" и "Списки изображений".
CCM_GETUNICODEFORMAT Возвращает флаг формата символов Юникода для элемента управления.
CCM_GETVERSION Возвращает номер версии для элемента управления, заданного последним сообщением CCM_SETVERSION.
CCM_SETUNICODEFORMAT Задает флаг формата символов Юникода для элемента управления. Это сообщение позволяет изменить набор символов, используемый элементом управления во время выполнения, а не повторно создать элемент управления.
CCM_SETVERSION Это сообщение используется для информирования элемента управления о том, что ожидается поведение, связанное с определенной версией.
CCM_SETWINDOWTHEME Задает визуальный стиль элемента управления.
WM_NOTIFY Отправляемый общим элементом управления в родительское окно, когда произошло событие или элемент управления требует некоторых сведений.
WM_NOTIFYFORMAT Определяет, принимает ли окно структуры ANSI или Юникода в сообщении WM_NOTIFY уведомления. WM_NOTIFYFORMAT сообщения отправляются из общего элемента управления в родительское окно и из родительского окна в общий элемент управления.

Notifications

Раздел Содержимое
NM_CHAR Код уведомления NM_CHAR отправляется элементом управления при обработке символьного ключа. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_CUSTOMDRAW Уведомляет родительское окно элемента управления о пользовательских операциях рисования. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_CUSTOMTEXT Уведомляет родительское окно элемента управления о пользовательских текстовых операциях. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_FONTCHANGED Отправляется элементом управления представления списка при изменении шрифта элемента управления. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_GETCUSTOMSPLITRECT Отправляется элементом управления кнопки в родительский элемент управления, чтобы получить измерения для двух прямоугольников, составляющих кнопку разделения. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_HOVER Отправляется элементом управления при наведении указателя мыши на элемент. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_KEYDOWN Отправляется элементом управления, когда элемент управления имеет фокус клавиатуры, и пользователь нажимает клавишу. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_KILLFOCUS Уведомляет родительское окно элемента управления о том, что элемент управления потерял фокус ввода. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_LDOWN Уведомляет родительское окно элемента управления о нажатии левой кнопки мыши. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_NCHITTEST Отправляется элементом управления перенаправки, когда элемент управления получает сообщение WM_NCHITTEST. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_OUTOFMEMORY Уведомляет родительское окно элемента управления о том, что элемент управления не мог завершить операцию, так как недостаточно памяти. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_RDOWN Не поддерживается в текущей версии.
NM_RELEASEDCAPTURE Уведомляет родительское окно элемента управления о том, что элемент управления освобождает запись мыши. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_RETURN Уведомляет родительское окно элемента управления о том, что элемент управления имеет фокус ввода и что пользователь нажимал клавишу ВВОД. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_SETCURSOR Уведомляет родительское окно элемента управления о том, что элемент управления задает курсор в ответ на сообщение NM_SETCURSOR . Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_SETFOCUS Уведомляет родительское окно элемента управления о том, что элемент управления получил фокус ввода. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_THEMECHANGED Уведомляет родительское окно элемента управления о том, что тема изменилась. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_TOOLTIPSCREATED Уведомляет родительское окно элемента управления о том, что элемент управления создал подсказку. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.
NM_TVSTATEIMAGECHANGING Отправляется элементом управления "Дерево- представление" в родительское окно, в которое изменяется изображение состояния. Этот код уведомления отправляется в виде сообщения WM_NOTIFY.

Структуры

Раздел Содержимое
COLORSCHEME Содержит сведения о рисовании кнопок на панели инструментов или панели.
DPASTREAMINFO Содержит элемент потока, используемый функцией обратного вызова PFNDPASTREAM .
INITCOMMONCONTROLSEX Содержит сведения, используемые для загрузки общих классов элементов управления из библиотеки динамических ссылок (DLL). Эта структура используется с функцией InitCommonControlsEx.
NMCHAR Содержит сведения, используемые с сообщениями уведомления о символах.
NMCUSTOMSPLITRECTINFO Содержит сведения о двух прямоугольниках разделенной кнопки. Отправлено с уведомлением NM_GETCUSTOMSPLITRECT .
NMCUSTOMTEXT Содержит сведения, используемые с пользовательским текстовым уведомлением.
NMHDR Содержит сведения о сообщении уведомления.
NMKEY Содержит сведения, используемые с сообщениями с ключевыми уведомлениями.
NMMOUSE Содержит сведения, используемые с сообщениями уведомления мыши.
NMOBJECTNOTIFY Содержит сведения, используемые с кодами уведомлений ТБN_GETOBJECT, TCN_GETOBJECT и PSN_GETOBJECT.
NMTOOLTIPSCREATED Содержит сведения, используемые с кодом уведомления NM_TOOLTIPSCREATED .
READERMODEINFO Содержит сведения, необходимые для инициализации функции DoReaderMode .

Константы

Раздел Содержимое
Константы CDRF Эти константы используются в качестве возвращаемых значений элементом управления в ответ на код уведомления NM_CUSTOMDRAW .
Стили В этом разделе перечислены распространенные стили элементов управления. За исключением отмеченных, эти стили применяются к элементам управления заголовкам, элементам управления панели инструментов и окнам состояния.
Классы окон В этом разделе перечислены имена классов окон, предоставляемые общей библиотекой элементов управления.