функція messagebox
Користувач повинен відповісти вікна повідомлення перед продовженням роботи в вікні, ідентифікованому параметром hWnd. При цьому, користувач може переміщатися в вікна інших потоків і працювати в цих вікнах.
Залежно від ієрархії вікон в додатку, користувач може бути в змозі переміщатися в інші вікна в межах потоку. Всі дочірні вікна батька вікна повідомлення автоматично блокуються, однак спливаючі вікна - не блокують.
MB_APPLMODAL є значенням за замовчуванням, якщо ні MB_SYSTEMMODAL. ні MB_TASKMODAL не визначені.
Те ж саме, що і MB_APPLMODAL за винятком того, що вікно повідомлення має стиль WS_EX_TOPMOST. Використовуйте працюють в системному режимі (недоступному для користувача) вікна повідомлення, щоб повідомити користувача про серйозні, потенційно руйнівних помилки, які вимагають негайної уваги (наприклад, вихід за межі обсягу пам'яті). Цей прапорець не має ніякого впливу на здатність користувача взаємодіяти з іншими вікнами. а не тільки пов'язаними з hWnd.
Те ж саме, що і MB_APPLMODAL за винятком того, що всі вікна верхнього рівня, що належать поточному потоку блокуються, якщо параметр hWnd дорівнює ПУСТО (NULL). Використовуйте цей прапорець тоді, коли зухвала програма або бібліотека не мають доступного дескриптора вікна, але тим не менше повинні перешкодити введенню даних в інші вікна в зухвалій потоці, що не припиняючи роботу інших потоків.
Щоб встановлювати інші параметри, використовуйте одне або кілька нижченаведених значень.
Windows NT 4.0 і раніше: Якщо поточний робочий стіл введення даних - не задані за замовчуванням робочий стіл, функція MessageBox завершується помилкою.
Windows 95/98 / Me: Цей прапорець не діє.
Текст вирівнюється по правому краю.
Виведений на екран текст повідомлення і заголовка, використовує порядок читання справа наліво як в системах на єврейському і арабських мовах.
Вікно повідомлення стає високопріоритетним вікном. Внутрішньо, система викликає функцію SetForegroundWindow для вікна повідомлення.
Вікно повідомлення створюється зі стилем вікна WS_EX_TOPMOST.
Термінальні служби: Якщо викликає потік має маркер запозичення прав, функція спрямовує вікно повідомлення в сесію, задану в маркері запозичення прав.
Якщо цей прапорець встановлений, параметр hWnd повинен мати значення ПУСТО (NULL). Це робиться так потім, щоб вікно повідомлення можна було показати на робочому столі, а не робочий стіл, відповідний hWnd.
Для отримання додаткової інформації про зміни між Microsoft ® Windows NT ® 3.51 і Windows NT 4.0. см. Зауваження.
Для отримання додаткової інформації про зміни між Microsoft ® Windows NT ® 3.51 і Windows NT 4.0. см. Зауваження.
Якщо вікно повідомлення має кнопку Відмінити (Cancel). то функція повертає значення IDCANCEL. якщо або обробляється клавіша ESC. або обрана кнопка Скасувати (Cancel). Якщо вікно повідомлення не має кнопки Скасувати (Cancel), натискання ESC не має ніякої дії.
Якщо функція завершується помилкою, яке значення дорівнює нулю. Щоб отримати додаткову інформацію про помилку, викличте GetLastError.
Якщо функція завершується успішно, повертається значення - одне з нижче перерахованих значень пункту меню.
Коли Ви використовуєте працює в системному (недоступному) режимі вікно повідомлення, яке звертає увагу на те, що в системі мало пам'яті, рядки, на які вказують параметри lpText і lpCaption не повинні братися з файлу ресурсу, тому що спроба завантажити ресурс може завершитися помилкою.
Якщо Ви створюєте вікно повідомлення, в той час, коли діалогове вікно присутній, використовуйте дескриптор блоку діалогу як параметр hWnd. Параметр hWnd не повинен ідентифікувати дочірнє вікно, таке як орган управління в блоці діалогу.
Windows 95/98 / Me: Система може підтримати максимум 16 364 дескриптора вікна.
Щоб побудувати сервісний модуль, який використовує MB_SERVICE_NOTIFICATION і може виконатися і в Windows ® MicrosoftNT 3.x і в Windows NT 4.0. Ви можете зробити одне з нижче перерахованого.
- Під час компонування програми, встановіть номер версії менше, ніж 4.0
- Під час компонування програми, встановіть версію 4.0. У період виконання, використовуйте функцію GetVersionEx. щоб перевірити версію системи. Потім при запуску в Windows NT 3.x. використовуйте MB_SERVICE_NOTIFICATION_NT3X; а в Windows NT 4.0. використовуйте MB_SERVICE_NOTIFICATION.
Windows 95/98 / Me: Навіть при тому, що MessageBoxW існує, вона все одно підтримується програмою Microsoft Layer for Unicode. щоб надати більшу сумісність характеру роботи в середовищі всіх операційних систем Windows. Щоб скористатися цією функцією, Ви повинні додати деякі файли до вашого додатком, як викладено в описі Microsoft Layer for Unicode для системи Windows 95/98 / Me.