Программирование: MsgBox

Прототип

function MsgBox(const Text: String; const Typ: TMsgBoxType; const Buttons: Integer): Integer;

Описание

Выводит на экран сообщение, где:
    Text — определяет текст сообщения;
    Typ — определяет значок, отображаемый в диалоге сообщения;
    Buttons — определяет кнопки, включённые в диалог сообщения.

Функция возвращает константу ID*, указывающую кнопку, которую нажал пользователь, или 0, если в работе функции произошёл сбой (что маловероятно, за исключением неверно переданных параметров или нехватки системных ресурсов).

Комментарии

Класс TMsgBoxType представлен следующими значениями:

TMsgBoxType = (mbInformation, mbConfirmation, mbError, mbCriticalError);

Флаги, поддерживаемые параметром Buttons:

MB_OK               - одна кнопка [OK]
MB_OKCANCEL         - две кнопки [OK] и [Cancel]
MB_ABORTRETRYIGNORE - три кнопки [Abort], [Retry] и [Ignore]
MB_YESNOCANCEL      - три кнопки [Yes], [No] и [Cancel]
MB_YESNO            - две кнопки [Yes] и [No]
MB_RETRYCANCEL      - две кнопки [Retry] и [Cancel]
MB_DEFBUTTON1       - кнопка 1 по умолчанию
MB_DEFBUTTON2       - кнопка 2 по умолчанию
MB_DEFBUTTON3       - кнопка 3 по умолчанию
MB_SETFOREGROUND    - окно сообщения поверх всех окон

Возможные возвращаемые значения функции:

IDOK     - нажата кнопка [OK]
IDCANCEL - нажата кнопка [Cancel]
IDABORT  - нажата кнопка [Abort]
IDRETRY  - нажата кнопка [Retry]
IDIGNORE - нажата кнопка [Ignore]
IDYES    - нажата кнопка [Yes]
IDNO     - нажата кнопка [No]

Пример

begin
  // Простое сообщение с кнопкой OK
  MsgBox('Hello.', mbInformation, MB_OK);

  // Запрос к пользователю с кнопками ответа Да/Нет
  if MsgBox('Are you sure?', mbConfirmation, MB_YESNO) = IDYES then
  begin
    // пользователь выбрал "Да"
  end;

  // Запрос к пользователю с кнопками ответа Да/Нет, по умолчанию выбран "Нет"
  if MsgBox('Are you sure?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then
  begin
    // пользователь выбрал "Да"
  end;
end;

См. также:

SuppressibleMsgBox
TaskDialogMsgBox