Простое окно MsgBox. В 3.7 я вкратце описал, как пользоваться окном MsgBox. Здесь я более подробно разберу его действие. Обеспечивает его появление на экране функция MsgBox. Если мы выполним оператор
MsgBox("Привет!")
то увидим на экране такое окно (Рис. 7.4).

Рис. 7.4
Обратите внимание, что кнопка ОК выделена (активна). Это значит, что вместо того, чтобы щелкать по ней мышью, можно просто на клавиатуре нажать клавишу Enter – результат будет тот же.
Точно такое же окно мы увидим, если выполним оператор
y = MsgBox("Привет!")
Поскольку MsgBox, как и всякая функция, имеет значение, оно и будет присвоено переменной y. Что это за значение и зачем оно нужно, мы чуть ниже выясним.
Более сложное окно MsgBox. Рассмотрим следующее окно MsgBox (Рис. 7.5).

Рис. 7.5
Оно отличается от предыдущего количеством кнопок, картинкой и текстом в заголовке. Также активна у нас кнопка No. Задается окно такой функцией MsgBox:
MsgBox ("Хотите знать, сколько будет дважды два?", MsgBoxStyle.YesNoCancel Or _
MsgBoxStyle.Information Or MsgBoxStyle.DefaultButton2, "Ответьте на вопрос")
У функции – 3 параметра, разделенные запятыми:
Первый параметр – текст сообщения «Хотите знать, сколько будет дважды два?».
Третий параметр – текст заголовка «Ответьте на вопрос». Если этот параметр вами не указан, то в заголовок выносится название вашего проекта.
Второй параметр у нас такой:
MsgBoxStyle.YesNoCancel Or MsgBoxStyle.Information Or MsgBoxStyle.DefaultButton2
Он определяет количество и названия кнопок (у нас – MsgBoxStyle.YesNoCancel), внешний вид и поведение окна (у нас – MsgBoxStyle.Information), а также то, какая кнопка из трех будет активной (у нас – MsgBoxStyle.DefaultButton2).
Вам не нужно запоминать их названий. VB сам предложит их вам на выбор во всплывающем списке, как только вы при вводе этой строки в окно кода введете запятую после первого параметра.
Составные части второго параметра отделяются друг от друга знаком логической функции Or. Не буду пояснять, почему. Составных частей может быть одна, две и больше. Они являются значениями перечисления MsgBoxStyle. Смысл трех из них ясен из таблицы:
|
Кнопки |
|
|
OKOnly |
Кнопка OK |
|
OKCancel |
Кнопки OK, Cancel (отменить) |
|
YesNo |
Кнопки Yes, No |
|
YesNoCancel |
Кнопки Yes, No, Cancel |
|
RetryCancel |
Кнопки Retry (попробовать еще раз), Cancel |
|
AbortRetryIgnore |
Кнопки Abort (отменить), Retry, Ignore (игнорировать) |
|
Картинки |
|
|
Critical |
Х – крест |
|
Question |
? – вопрос |
|
Exclamation |
! – восклицание |
|
Information |
i – информация |
|
Какая кнопка активна |
|
|
DefaultButton1 |
1-я |
|
DefaultButton2 |
2-я |
|
DefaultButton3 |
3-я |