Функція MessageBox створює, відображає і діє вікно повідомлення. Вікно повідомлення містить повідомлення визначений у застосунку та назви, а також будь-яку комбінацію стандартні іконки і кнопки.
int MessageBox ( HWND hWnd, / / ручка вікна власникаLPCTSTRlpText, / / адреса тексту в полі повідомленняLPCTSTRlpCaption, / / адреса назви вікна повідомленняUINTuType / / стиль вікна повідомлення);
Задайте один з наступних прапори вказати кнопки, що містяться у вікні повідомлення:
Прапор | Значення |
---|---|
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-телефонії без призупинення інші теми. |
Крім того, ви можете вказати наступні варіанти стану:
Якщо цей прапор, 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. |
Значення дорівнює нулю, якщо не вистачає пам'яті, щоб створити вікно повідомлення.
Якщо функція завершено успішно, значення, що повертається, є одним з таких пункт меню значень, повернутих у діалоговому вікні:
Значення | Значення |
---|---|
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
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