MessageBox

Функція MessageBox створює, відображає і діє вікно повідомлення. Вікно повідомлення містить повідомлення визначений у застосунку та назви, а також будь-яку комбінацію стандартні іконки і кнопки.

int MessageBox ( HWND  hWnd, / / ручка вікна власникаLPCTSTRlpText, / / адреса тексту в полі повідомленняLPCTSTRlpCaption, / / адреса назви вікна повідомленняUINTuType / / стиль вікна повідомлення);
 

Параметри

hWnd
Ідентифікує власника вікно повідомлення поля, щоб створити. Якщо цей параметр має значення NULL, вікно повідомлення має жодне вікно не власник.
lpText
Вказівник на нульовим закінченням, що містить повідомлення, для відображення.
lpCaption
Вказівник на рядок для назви діалогового вікна. Якщо цей параметр має значення NULL, назву за промовчанням помилки використовується.
uType
Визначає набір прапорів біт, що визначають вміст і поведінки в діалоговому вікні. Цей параметр може бути поєднання прапори з таких груп прапори.

Задайте один з наступних прапори вказати кнопки, що містяться у вікні повідомлення:
Прапор Значення
MB_ABORTRETRYIGNORE Вікно повідомлення містить три кнопки: перервати, повторіть спробу і ігнорувати.
MB_OK Вікно повідомлення містить одна кнопка: ОК. Це за замовчуванням.
MB_OKCANCEL Вікно повідомлення містить дві кнопки: ОК і скасувати.
MB_RETRYCANCEL Вікно повідомлення містить дві кнопки: повторити та скасувати.
MB_YESNO Вікно повідомлення містить дві кнопки: так і ні.
MB_YESNOCANCEL Вікно повідомлення містить три кнопки: так, ні і скасувати.

Задайте один з наступних прапорів для відображення піктограми у вікні повідомлення:
Прапор Значення
MB_ICONEXCLAMATION,
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 інші теми і працювати в цих windows.

Залежно від того, ієрархія windows у додатку користувач може бути здатна перейти до інших вікон у гілці. Усі дочірні вікна батьківського вікна повідомлення автоматично вимикаються, але не є блокування спливаючих вікон.

MB_APPLMODAL використовується за замовчуванням, якщо вказано ні MB_SYSTEMMODAL, ні MB_TASKMODAL.

MB_SYSTEMMODAL Само, як MB_APPLMODAL, хіба що в вікні повідомлення має стиль WS_EX_TOPMOST. Використання системи модальних повідомлення ящики сповіщати користувача про серйозні, потенційно небезпечного помилки, що вимагають негайної уваги (наприклад, працює з пам'яті). Цей прапор має ніякого ефекту на користувача здатність взаємодіяти з windows, крім тих, що пов'язані з hWnd.
MB_TASKMODAL Само, як MB_APPLMODAL, хіба що верхнього рівня windows, що належать до поточний потік вимкнуто, якщо параметр hWnd є NULL. Використовувати цей прапор під час виклику застосунки чи бібліотеки не має дескриптор вікна, доступні, але все ще потребує, щоб заборонити введення, щоб інші вікна в потоці IP-телефонії без призупинення інші теми.

Крім того, ви можете вказати наступні варіанти стану:

MB_DEFAULT_DESKTOP_ONLY
Робочий стіл, в даний час отримання вводу має бути робочий стіл за замовчуванням; в іншому випадку функція не може. За промовчанням робочий стіл є одним програма працює на після того, як користувач має ввійти.
MB_HELP
Додає кнопку довідки у вікні повідомлення. Вибір Довідка "або натисніть клавішу F1 створює події довідки.
MB_RIGHT
Текст є вирівнюванням праворуч.
MB_RTLREADING
Відображає повідомлення та підпис текст за допомогою порядок читання справа наліво на іврит та Арабська систем.
MB_SETFOREGROUND
Вікно повідомлення стає переднього вікна. Внутрішньо, система закликає SetForegroundWindow функції вікно повідомлення.
MB_TOPMOST
Вікно повідомлення створюється стиль вікна WS_EX_TOPMOST.
MB_SERVICE_NOTIFICATION
Windows NT: Абонент – це послуга, що повідомляє користувача про подію. Функція відображає повідомлення на поточний active desktop, навіть якщо користувач не ввійшов до системи.

Якщо цей прапор, 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, у вас є два вибори.
  1. Під час компонування вкажіть менше, ніж номер версії 4.0; або
nbsp;   2. Під час компонування вкажіть версії 4.0. Під час виконання використовувати функцію GetVersionEx , щоб перевірити версію системи. Потім, коли працює на Windows &NT 3. x, за допомогою MB_SERVICE_NOTIFICATION_NT3X; і на Windows NT 4.0, використання MB_SERVICE_NOTIFICATION.

MB_SERVICE_NOTIFICATION_NT3X
Windows NT: Це значення відповідає значення, визначені для MB_SERVICE_NOTIFICATION для Windows NT версії 3.51.

Повернення значень

Значення дорівнює нулю, якщо не вистачає пам'яті, щоб створити вікно повідомлення.

Якщо функція завершено успішно, значення, що повертається, є одним з таких пункт меню значень, повернутих у діалоговому вікні:

Значення Значення
IDABORT Припинення кнопка була обрана.
IDCANCEL Було вибрано кнопку "Скасувати".
IDIGNORE Ігнорувати було вибрано кнопку.
IDNO Було вибрано не кнопки.
IDOK Було вибрано кнопку "OK".
IDRETRY Було вибрано кнопку "Повторити".
IDYES Так було вибрано кнопку.

Якщо вікно повідомлення кнопку Скасувати, функція повертає значення IDCANCEL, якщо або натискання клавіші esc або вибрано кнопку "Скасувати". Якщо вікно повідомлення немає кнопки "Скасувати", натиснути клавішу esc не діє.

Зауваження

Під час використання вікна повідомлення системи модальних вказати системі не вистачає пам'яті, рядки вказав на lpText , і lpCaption параметри не слід приймати від файлу ресурсів, тому що може не спроба завантажити ресурс.

При застосуванні закликає MessageBox і визначає MB_ICONHAND і MB_SYSTEMMODAL прапорів для параметра uType , система відображення отриманий вікно повідомлення, незалежно від того, доступної пам'яті. Коли вони визначені ці прапори, система обмежує довжину поля тексту повідомлення до трьох рядків. Система робить не автоматично Перерва лінії, щоб вона розмістилася у вікно повідомлення, проте, так що рядок повідомлення може містити каретки лінії в відповідних місцях розірвати.

Вікно повідомлення під час діалогове вікно присутня, використовувати маркер у діалоговому вікні як параметр hWnd . HWnd параметр не слід визначити дочірнього вікна, наприклад, елемента керування в діалоговому вікні.

Windows 95:Система може підтримувати максимум 16,364 вікно ручки.

Windows CE: Windows CE не підтримує такі стилі для параметра uType

MB_SYSTEMMODAL

MB_TASKMODAL

MB_HELP

MB_RIGHT

MB_RTLREADING

MB_DEFAULT_DESKTOP_ONLY

MB_SERVICE_NOTIFICATION

MB_USERICON.

Такі повернення значення не підтримується:

IDCLOSE

IDHELP

QuickInfo

nbsp; Windows &NT: вимагає 3.1 або пізнішої версії.
Windows:Вимагає Windows 95 або пізнішої версії.
Windows CE:Потрібна Версія 1.0 або пізнішу версію.
Заголовка:Оголошена в winuser.h.
Імпортувати бібліотеки:Використання user32.lib.
Юнікод:Реалізований у вигляді Юнікод і ANSI версії Windows і Windows NT.

Дивіться також

Діалогове вікно огляд коробки, діалоговому вікні функції, FlashWindow, MessageBeep, MessageBoxEx, MessageBoxIndirect, SetForegroundWindow

Index