Используется для того, чтобы определить, принимает ли окно структуры ANSI или Unicode в уведомляющем сообщении WM_NOTIFY. Сообщения WM_NOTIFYFORMAT отправляются из стандартного органа управления в его родительское окно и из родительского окна в стандартный орган управления.
Чтобы отправить это сообщение, вызовите функцию SendMessage следующим образом.
Синтаксис
lResult = SendMessage( // возвращает LRESULT в lResult (HWND) hWndControl, // дескриптор целевого органа управления (UINT) WM_NOTIFYFORMAT, // ID сообщения (WPARAM) wParam, // = (WPARAM) (HWND) hwndFrom (LPARAM) lParam // = Command ); |
Параметры
hwndFrom
Дескриптор окна, которое отправляет сообщение WM_NOTIFYFORMAT. Если параметр Command - NF_QUERY, то этот параметр - дескриптор органа управления. Если параметр Command - NF_REQUERY, то этот параметр - дескриптор родительского окна органа управления.
Command
Значение команды, которое определяет природу сообщения WM_NOTIFYFORMAT. Оно будет одним из нижеследующих значений:
Значение | Предназначение |
NF_QUERY | Сообщение является запросом, чтобы определить, должны ли структуры ANSI или Unicode использоваться в сообщениях WM_NOTIFY. Эта команда отправляется из органа управления в его родительское окно в ходе создание органа управления и в ответ на команду NF_REQUERY. |
NF_REQUERY | Сообщение -это запрос органа управления, чтобы отправить форму NF_QUERY этого сообщения своему родительскому окну. Эта команда отправляется из родительского окна. Родительское окно просит, чтобы орган управления повторно сделал запрос об этом типе структур, чтобы использовать в сообщениях WM_NOTIFY. Если параметр Command - NF_REQUERY, возвращаемое значение равно результату операции повторного запроса. |
Возвращаемое значение
Возвращается одно из нижеследующих значений:
Значение Предназначение NFR_ANSI Структуры ANSI должны использоваться в сообщениях WM_NOTIFY, отправленных органом управления. NFR_UNICODE Структуры Unicode должны использоваться в сообщениях WM_NOTIFY, отправленных органом управления. 0
Произошла ошибка.
Замечания
Когда создается стандартный орган управления, он отправляет сообщение WM_NOTIFYFORMAT своему родительскому окну, чтобы определить тип структур, которые используются в сообщениях WM_NOTIFY. Если родительское окно не обрабатывает это сообщение, функция DefWindowProc отвечает согласно типу родительского окна. Таким образом, если родительское окно - окно Unicode, DefWindowProc возвращает значение NFR_UNICODE, а если родительское окно - окно ANSI, DefWindowProc возвращает значение NFR_ANSI. Если родительское окно - диалоговое окно и не обрабатывает это сообщение, функция DefDlgProc просто отвечает согласно типу диалогового окна (Unicode или ANSI).
Родительское окно может изменить тип структур, которые стандартный орган управления использует в сообщениях WM_NOTIFY, устанавливая параметр lParam в значение NF_REQUERY и отправляя сообщение WM_NOTIFYFORMAT органу управления. Это заставляет орган управления отправлять форму NF_QUERY сообщения WM_NOTIFYFORMAT родительскому окну.
Все стандартные органы управления отправляют сообщения WM_NOTIFYFORMAT. Однако, стандартные органы управления Windows (поля редактирования, комбинированные окна, поля списка, кнопки, полосы прокрутки и статические органы управления) этого не делают.
Смотри также
Обзор Органы управления Windows, Сообщения, используемые органами управления
Размещение и совместимость WM_NOTIFYFORMAT |
||
К | Windows XP | Да |
л | Windows 2000 Professional | Да |
и | Windows NT Workstation | Да версии 3.51 |
е | Windows Me | Да |
н | Windows 98 | Да |
т | Windows 95 | Да |
С | Windows Server 2003 | Да |
е | Windows 2000 Server | Да |
р | Windows NT Server | Да версии 3.51 |
в | ||
е | ||
р | ||
Используемая библиотека | - | |
Используемая DLL | - | |
Заголовочный файл | ||
- объявлено в | winuser.h | |
- включено в | - | |
Unicode | Нет | |
Замечания по платформе | Не имеется |