Окно сообщений
Окно СООБЩЕНИЙ_ 1
Функция MsgBox 1
Синтаксис функции MsgBox 1
Отображение пиктограммы_ 1
Отображение кнопок 2
Помещение кнопки в фокус 2
Определение модальности окна сообщения 2
Коды кнопок, возвращаемые функцией MsgBox 3
Размещение сообщения в нескольких строках 3
Пример использования функции MsgBox 3
Пример использования процедуры MsgBox 3
Окно ВВОДА_ 4
Оператор перехода goto и метки_ 4
Окно СООБЩЕНИЙ
Функция MsgBox
Окно сообщений (message box) – простейший вид формы с одной или несколькими стандартными кнопками, предназначенной для отображения сообщений. Окно сообщений целесообразно использовать в том случае, если программе необходимо запросить у пользователя информацию в форме ответа типа “Да или Нет”.
Окно сообщений требует реакции пользователя на отображённое сообщение. Пока на экране находится окно сообщений, программа находится в состоянии ожидания
В окне сообщений можно отобразить заголовок окна, текст сообщения, одну из четырёх предопределённых пиктограмм и один из шести наборов кнопок.
Синтаксис функции MsgBox
Функция возвращает код, соответствующий нажатой кнопке.
MsgBox (promt, [ buttons ], [ title ], [ helpfile, contex ]) As vbMsgBoxResult
promt – обязательный параметр; строковое выражение, содержащее текст сообщения. Максимальная длина строки – 1024 символа;
buttons – необязательный параметр. Выражение целого типа, содержащее сумму констант влияющих на вид пиктограммы, набор кнопок, положение фокуса, модальность окна;
title – необязательный параметр. Строковое выражение, отображаемое в заголовке окна. Максимальная длина строки – около 60 символов, зависит от размера шрифта используемого в заголовках окон.
helpfile – необязательный параметр. Строковое выражение, которое идентифицирует справочный файл, обеспечивающий контекстно-зависимую справку для окна сообщений. Если указан параметр helpfile, то необходимо указать и параметр contex.
contex – необязательный параметр. Числовое выражение, которое является номером справочного контекста, назначенным на соответствующий раздел справки. Если указан параметр contex, то необходимо указать и параметр helpfile.
Если заданы параметры helpfile и contex, то в окне сообщений отображается кнопка Справка.
Отображение пиктограммы
Для отображения пиктограмм в окне сообщений рекомендуется использовать идентификаторы констант, приведённых в таблице, что упрощает чтение программы. В таблице приведены значения параметра buttons, влияющие на вид отображаемой в окне сообщений пиктограммы.
Пиктограмма | Тип сообщения | Значение параметра | Идентификатор константы | Описание |
Критическое | 16 | vbCritical | Индикация серьёзной ошибки в программе, при которой она аварийно завершает работу | |
Запрос | 32 | vbQuestion | Для продолжения работы программы требуется дополнительная информация | |
Предупреждение | 48 | vbExclamation | Индикация ошибки в программе, которая может быть исправлена после вмешательства пользователя | |
Информация | 64 | vbInformation | Информация для пользователя о состоянии программы. Часто применяется при выполнении поставленной задачи |
Отображение кнопок
Для отображения кнопок в окне сообщений рекомендуется использовать идентификаторы констант, приведённых в таблице, что упрощает чтение программы. В таблице приведены значения параметра buttons, влияющие на набор кнопок в окне сообщений.
Набор кнопок | Значение параметра | Идентификатор константы | Описание |
ОК | 0 | vbOkOnly | Используется для отображения информационных сообщений и для остановки работы программы |
OK, Cancel ОК, Отмена | 1 | vbOkCancel | Используется для подтверждения выполнения определённой операции или её отмены |
Abort, Retry, Ignore Стоп, Повторить, Пропустить | 2 | vbAbortRetryIgnore | Используется при возникновении ошибки. Пользователю предлагается прекращение начатой операции, её повтор либо игнорирование ошибки |
Yes, No, Cancel Да, Нет, Отмена | 3 | vbYesNoCancel | Пользователь может подтвердить одно из предложенных действий, либо отменить выполнение начатой операции |
Yes, No Да, Нет | 4 | vbYesNo | Пользователю предлагается выбрать один из двух возможных ответов |
Retry, Cancel Повторить, Отмена | 5 | vbRetryCancel | Используется при работе с некоторым устройством, чтобы дать возможность пользователю повторить операцию после устранения неполадки |
Если окно сообщений отображает кнопку Cancel, то щелчок на кнопке эквивалентен нажатию клавиши Esc.
Помещение кнопки в фокус
Если в окне сообщений используется больше одной кнопки, то можно определить, какая из них должна находиться в фокусе. Как правило, в фокус помещается кнопка, на которой чаще всего приходится щёлкать пользователю. В таблице приведены значения параметра buttons, влияющие на положение фокуса.
Номер кнопки | Значение параметра | Идентификатор константы |
Первая | 0 | vbDefaultButton1 |
Вторая | 256 | vbDefaultButton2 |
Третья | 512 | vbDefaultButton3 |
Четвёртая | 768 | vbDefaultButton4 |