MessageBox

MessageBox

MessageBoxфункция Windows API, предназначенная для вывода на экран диалогового окна сообщения одного из стандартных типов. Существует в операционных системах семейства Microsoft Windows и [1]

Содержание

История

Впервые появилась ещё в 16-разрядных версиях Windows. Начиная с Windows NT 3.1, поддерживает Unicode.

Возможности

С помощью функции MessageBox можно вывести на экран окно сообщения с заданными заголовком и текстом. Окно можно дополнить иконкой из специально предназначенного для этого стандартного набора со следующими символами:

  • «!» — для сообщений, требующих повышенного внимания пользователя;
  • «i» — для сообщений информационного характера;
  • «?» — для сообщений, содержащих вопрос;
  • знак «стоп» — для сообщений о критических ошибках.

Для обратной связи с пользователем окно снабжено одним из стандартных наборов кнопок:

  • «OK»;
  • «OK», «Отмена»;
  • «Повторить», «Отмена»;
  • «Да», «Нет»;
  • «Да», «Нет», «Отмена»;
  • «Прервать», «Повторить», «Пропустить».

Пример использования

Пример использования функции MessageBox

Ниже приведён исходный текст программы на языке Си, которая выводит на экран сообщение «Hello, World!» в окне с заголовком «Example» и кнопкой «OK».

#include <windows.h>
 
int WINAPI
WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPSTR lpCmdLine, int nCmdShow)
{
  MessageBox(NULL, "Hello, World!", "Example",
    MB_OK | MB_ICONEXCLAMATION);
  return 0;
}

Реализация

В современных ОС с поддержкой UNICODE эта функция существует в двух версиях: MessageBoxA и MessageBoxW (с параметрами в кодировке MessageBox является макросом, обозначающим одну из этих функций.

Существует также расширенная версия этой функции — MessageBoxEx, имеющая дополнительный аргумент — идентификатор языка, на котором отображаются надписи на кнопках. Причём в [2]

int
STDCALL
MessageBoxW(
  HWND hWnd,
  LPCWSTR lpText,
  LPCWSTR lpCaption,
  UINT uType)
{
  return MessageBoxExW(hWnd, lpText, lpCaption, uType, LANG_NEUTRAL);
}

Всё семейство функций MessageBox в MessageBoxTimeoutIndirectW, которая создаёт диалоговое окно с требуемыми свойствами и отображает его на экране.[2]

Источники



Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "MessageBox" в других словарях:

  • Pigeonhole messagebox — A pigeonhole messagebox (commonly referred to as a pigeon hole, or in Oxford colleges as a pidge, known in the United States as a Mailbox, especially in academic or office settings) is a device for communication commonly used in organisations and …   Wikipedia

  • Liste von Hallo-Welt-Programmen/Sonstige — Dies ist eine Liste von Hallo Welt Programmen für grafische Benutzeroberflächen, Web Technologien, exotische Programmiersprachen und Textauszeichnungssprachen. Weitere Beispiele für gebräuchliche Programmiersprachen sind unter Liste von Hallo… …   Deutsch Wikipedia

  • Script.NET — Infobox programming language name = Script.NET paradigm = Imperative designer = developer = latest release version = latest release date = 2007 10 02 typing = Dynamic implementations = dialects = influenced by = Java Script influenced = operating …   Wikipedia

  • S-Sharp — Script.NET Paradigmen: Skriptsprache Entwickler: Petro Protsyk Aktuelle Version: Beta 17122007  (17. Dezember 2007) Typisierung …   Deutsch Wikipedia

  • Script.NET — Paradigmen: Skriptsprache Entwickler: Petro Protsyk Aktuelle Version: Beta 17122007  (17. Dezember 2007) Typisierung: schwach …   Deutsch Wikipedia

  • .cs (extension de fichier) — C sharp Pour les articles homonymes, voir Sharp et .cs. C# …   Wikipédia en Français

  • C Sharp — Pour les articles homonymes, voir Sharp et .cs. C# …   Wikipédia en Français

  • C dièse — C sharp Pour les articles homonymes, voir Sharp et .cs. C# …   Wikipédia en Français

  • C sharp — Pour les articles homonymes, voir Sharp et .cs. C♯ …   Wikipédia en Français

  • C♯ — C sharp Pour les articles homonymes, voir Sharp et .cs. C# …   Wikipédia en Français


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»