Поделиться через


Функция MessageBoxIndirectA (winuser.h)

Создает, отображает и управляет окном сообщения. Поле сообщения содержит текст сообщения и название приложения, любой значок и любую комбинацию предопределенных кнопок.

Синтаксис

int MessageBoxIndirectA(
  [in] const MSGBOXPARAMSA *lpmbp
);

Параметры

[in] lpmbp

Тип: const LPMSGBOXPARAMS

Указатель на структуру MSGBOXPARAMS, содержащую сведения, используемые для отображения поля сообщения.

Возвращаемое значение

Тип: int

Если функция выполнена успешно, возвращаемое значение является одним из следующих значений элемента меню.

Если в поле сообщения есть кнопка "Отмена ", функция возвращает значение IDCANCEL, если нажатие клавиши ESC или кнопка "Отмена ". Если в поле сообщения нет кнопка "Отмена", нажатие клавиши ESC не действует.

Если для создания поля сообщения недостаточно памяти, возвращаемое значение равно нулю.

Возврат кода или значения Описание
IDABORT
3
Выбрана кнопка abort.
IDCANCEL
2
Выбрана кнопка "Отмена ".
IDCONTINUE
11
Выбрана кнопка "Продолжить".
IDIGNORE
5
Выбрана кнопка "Игнорировать".
IDNO
7
Выбрана кнопка "Нет".
IDOK
1
Выбрана кнопка ОК.
IDRETRY
4
Выбрана кнопка повторить попытку.
IDTRYAGAIN
10
Выбрана кнопка "Повторить попытку".
IDYES
6
Выбрана кнопка "Да".

Замечания

При использовании системного модального окна сообщения, указывающего, что система низка в памяти, строки, указывающие на lpszText и lpszCaption, члены структуры MSGBOXPARAMS не должны приниматься из файла ресурсов, так как попытка загрузки ресурса может завершиться ошибкой.

Если во время диалогового окна создается окно сообщения, используйте дескриптор в качестве параметра hWnd. Параметр hWnd не должен определять дочернее окно, например элемент управления в диалоговом окне.

Заметка

Заголовок winuser.h определяет MessageBoxIndirect как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winuser.h (включая Windows.h)
библиотеки User32.lib
DLL User32.dll
набор API ext-ms-win-ntuser-dialogbox-l1-1-0 (представлено в Windows 8)

См. также

концептуальные

диалоговое окно

MSGBOXPARAMS

MessageBox

MessageBoxEx

Справочник