Функция MessageBoxEx создает, отображает и управляет окно сообщения. Окно сообщения содержит сообщение и титул, а также любую комбинацию предопределенных значков и кнопок. Параметр wLanguageId указывает, какой набор языковых ресурсов используется для стандартных кнопок. Для полного описания других параметров MessageBoxExсмотрите MessageBox.
int () MessageBoxEx HWND hWnd, / / обработать из окна-владельцаLPCTSTRlpText, / / адрес текста в окне сообщенияLPCTSTRlpCaption, / / адрес заголовка окна сообщенияUINTuType, / / стиле окна сообщенияСловоwLanguageId / / идентификатор языка);
Укажите один из следующих флагов для обозначения кнопок, содержащихся в окне сообщения:
Флаг | Значение |
---|---|
MB_ABORTRETRYIGNORE | Окно сообщения содержит три кнопки: прервать, повторить и игнорировать. |
MB_OK | Окно сообщения содержит одну кнопку: ОК. Это значение по умолчанию. |
MB_OKCANCEL | Окно сообщения содержит две кнопки: OK и отмена. |
MB_RETRYCANCEL | Окно сообщения содержит две кнопки: повторить и отмена. |
MB_YESNO | Окно сообщения содержит две кнопки: Да и нет. |
MB_YESNOCANCEL | Окно сообщения содержит три кнопки: Да, нет и отмена. |
Укажите один из следующих флагов для отображения значка в окне сообщения:
Флаг | Значение |
---|---|
СТИЛЯ, MB_ICONWARNING |
В окне сообщения отображается значок восклицательным. |
MB_ICONINFORMATION, MB_ICONASTERISK |
В окне сообщения появляется значок состоящий из строчной буквой я в круге. |
MB_ICONQUESTION | В окне сообщения появляется значок вопросительного знака. |
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND |
В окне сообщения отображается значок в виде стоп знак. |
Укажите один из следующих флагов указать кнопку по умолчанию:
Флаг | Значение |
---|---|
MB_DEFBUTTON1 | Первая кнопка является кнопкой по умолчанию. MB_DEFBUTTON1 является значением по умолчанию, если не MB_DEFBUTTON2, MB_DEFBUTTON3 или MB_DEFBUTTON4. |
MB_DEFBUTTON2 | Вторая кнопка является кнопкой по умолчанию. |
MB_DEFBUTTON3 | Третья кнопка является кнопкой по умолчанию. |
MB_DEFBUTTON4 | Четвертая кнопка является кнопкой по умолчанию. |
Укажите один из следующих флагов для обозначения модальность диалогового окна:
Флаг | Значение |
---|---|
MB_APPLMODAL | Пользователь должен реагировать окна сообщения перед продолжением работы в окне, заданного параметром hWnd . Однако пользователь может перейти к windows других потоков и работают в этих окнах. В зависимости от иерархии окон в приложение пользователь может быть возможность перемещать в другие окна в поток. Все дочерние окна родительского окна сообщения автоматически отключаются, но не являются всплывающие окна. MB_APPLMODAL является значением по умолчанию, если не указаны ни MB_SYSTEMMODAL, ни MB_TASKMODAL. |
MB_SYSTEMMODAL | То же, что MB_APPLMODAL, за исключением того, что окна сообщения в WS_EX_TOPMOST стиле. Используйте окна системы модальных сообщений для уведомления пользователя о серьезных, потенциально опасных ошибок, которые требуют немедленного внимания (например, памяти). Этот флаг не влияет на его способность взаимодействовать с windows за исключением тех, которые связаны с hWnd. |
MB_TASKMODAL | То же, что MB_APPLMODAL, за исключением того, что всех окон верхнего уровня, принадлежащих текущему потоку будут отключены, если hWnd параметр имеет значение NULL. Используйте этот флаг, когда вызывающий приложение или библиотека не имеет дескриптора окна доступны, но все еще нуждается для предотвращения других окон в вызывающем потоке без приостановки другие потоки. |
Кроме того можно указать следующие флаги:
Если этот флаг установлен, hWnd параметр должен иметь значение NULL. Это так, что окно сообщения могут появиться на рабочем столе за исключением рабочего стола соответствует hWnd.
Для Windows NT версии 4.0 изменилось значение MB_SERVICE_NOTIFICATION. Смотрите WINUSER.H для старых и новых значений. Windows NT 4.0 обеспечивает обратную совместимость для уже существующих служб, сопоставляя старое значение новое значение в осуществлении MessageBox и MessageBoxEx. Это сопоставление выполняется только для исполняемых файлов, которые имеют номер версии, как компоновщик, меньше чем 4.0.
Чтобы создать службу, которая использует MB_SERVICE_NOTIFICATION и может работать на Windows NT 3.x и Windows NT 4.0, у вас есть два варианта.
|
nbsp; 2. Во время компоновки укажите версию 4.0. Во время выполнения используйте функцию GetVersionEx для проверки версии системы. Тогда когда работает на Windows &NT 3.x, используйте MB_SERVICE_NOTIFICATION_NT3X; и в Windows NT 4.0, используйте MB_SERVICE_NOTIFICATION. |
Список идентификаторов языка, поддерживаемых Win32, Идентификаторы языка. Обратите внимание, что каждый локализованные версии Windows и Windows NT обычно содержит ресурсы только для ограниченного набора языков. Таким образом например, версии США предлагает LANG_ENGLISH, французская версия предлагает LANG_FRENCH, немецкая версия предлагает LANG_GERMAN и японская версия предлагает LANG_JAPANESE. Каждая версия предлагает LANG_NEUTRAL. Это ограничивает набор значений, которые можно использовать с параметром wLanguageId . Перед тем как указать идентификатор языка, следует перечислить языковых стандартов, установленных в системе.
Если функция выполнена успешно, возвращаемое диалоговым окном значение ненулевой элемент меню является возвращаемое значение.
Значение | Значение |
---|---|
IDABORT | Выбрана кнопка прерывания. |
IDCANCEL | Была выбрана кнопка Отмена. |
IDIGNORE | Игнорировать выбрана кнопка. |
IDNO | Была выбрана кнопка нет. |
IDOK | Была выбрана кнопка OK. |
IDRETRY | Выбрана кнопка "Повторить". |
IDYES | Да была выбрана кнопка. |
Если окно сообщения содержит кнопки "Отмена", функция возвращает значение IDCANCEL при нажатии клавиши esc или кнопку Отмена. Если окно сообщения не кнопка Отмена, нажатие клавиши esc не влияет.
Если вызов функции был неуспешен, возвращаемое значение равно нулю. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
При создании окна сообщения модальной системе чтобы указать, что системе не хватает памяти, строки передаются как параметры lpText и lpCaption не следует считать из файла ресурсов, потому что попытка загрузить ресурс может не.
Когда приложение вызывает функцию MessageBoxEx и задает для параметра uType MB_ICONHAND и MB_SYSTEMMODAL флаги, Win32 API результирующий сообщение появляется независимо от доступной памяти. При указании этих флагов, система ограничивает длину текста окна сообщения в одну строку.
Если создается окно сообщения, в то время как диалоговое окно сообщения присутствует, используйте дескриптор диалогового окна в качестве параметра hWnd . Параметр hWnd не следует определить дочернее окно, например диалоговое окно.
Windows 95:Система может поддерживать до 16,364 оконных дескрипторов.
nbsp; Windows &NT: требует версии 3.1 или более поздней версии.
Windows:Требует Windows 95 или более поздней версии.
Windows CE:Не поддерживается.
Заголовок:Объявленные в winuser.h.
Импорта библиотеки:Используйте user32.lib.
Юникод:В Unicode и ANSI версий Windows и Windows NT.
Обзор диалогового окна, диалогового окна функций, MAKELANGID MessageBeep,MessageBox , MessageBoxIndirect, SetForegroundWindow