| Предыдущий | Следующий |
| ERROR_NO_SYSTEM_MENU | ERROR_INVALID_SPI_VALUE |
ERROR_INVALID_MSGBOX_STYLE
description[флаги стиля MessageBox содержат недопустимое или неподдерживаемое сочетание.]Недопустимое сочетание стилей окна сообщения
MessageBox использует битовое поле для выбора группы кнопок, значка, кнопки по умолчанию, модальности, выравнивания и другого поведения. Некоторые биты являются альтернативами внутри маски, а не независимыми возможностями, которые можно все объединить OR.
Этот статус указывает на проверку параметров до обычного взаимодействия с пользователем. Он особенно полезен, когда флаги стиля собираются из конфигурации или преобразуются из другой UI-платформы: числовое значение может содержать взаимоисключающие варианты группы или биты, недопустимые для вызванного API.
Что проверить
- Запишите конечное значение стиля в шестнадцатеричном виде и расшифруйте каждый флаг по группе маски.
- Выберите ровно одно значение группы кнопок и по одному значению значка и кнопки по умолчанию там, где API определяет альтернативы.
- Удалите внутренние флаги платформы до вызова USER32.
- Воспроизведите с минимальным фиксированным стилем, чтобы изолировать группу битов, добавляющую недопустимое сочетание.
Ошибка не означает сбой нажатия кнопки или процедуры диалога; USER32 отклонил описание стиля, использованное для создания окна сообщения.
Ссылки
- Microsoft: рекомендации по программированию диалоговых окон
- Microsoft: окна и сообщения
- Wine: перечень реализации API user32
Нужно найти другой код? Найти другой код состояния или ошибки.