Найти в Дзене
Piter Melnikov

Встроенные диалоговые окна Visual Basic

Окно сообщений Встроенные диалоговые окна представляют собой операторы или функции языка. К ним относятся окно вывода (MessageBox) и окно ввода (InputBox). Окна диалогов используют системные функции Windows. Поэтому надписи на кнопках, названия полей и другие элементы окон диалога могут отображаться на экране в английском или русском варианте, в зависимости от версии и настроек Windows.
Окно сообщения создается функцией MsgBox, которая имеет следующий синтаксис:
MsgBox(prompt[, buttons] [, title] [, helpfile, context])
Функция возвращает значение, соответствующее выбранной пользователем кнопке в окне сообщения. Ниже в таблице приведены значения и имена возвращаемых констант. Имена можно использовать вместо значений в любом месте программы. Параметр prompt обязательный. Это строка, которая выдается в окне сообщения. Её длина ограничена 1024 символами.
Параметр buttons необязательный. Значение параметра - целое число, равное сумме значений, определяющих набор кнопок, коды значков, кноп

Окно сообщений

Встроенные диалоговые окна представляют собой операторы или функции языка. К ним относятся окно вывода (MessageBox) и окно ввода (InputBox). Окна диалогов используют системные функции Windows. Поэтому надписи на кнопках, названия полей и другие элементы окон диалога могут отображаться на экране в английском или русском варианте, в зависимости от версии и настроек Windows.
Окно сообщения создается функцией MsgBox, которая имеет следующий синтаксис:
MsgBox(prompt[, buttons] [, title] [, helpfile, context])
Функция возвращает значение, соответствующее выбранной пользователем кнопке в окне сообщения. Ниже в таблице приведены значения и имена возвращаемых констант. Имена можно использовать вместо значений в любом месте программы.

-2

Параметр prompt обязательный. Это строка, которая выдается в окне сообщения. Её длина ограничена 1024 символами.
Параметр
buttons необязательный. Значение параметра - целое число, равное сумме значений, определяющих набор кнопок, коды значков, кнопки по умолчанию в окне сообщения, а также модальность окна. Возможные значения описаны ниже. По умолчанию значение параметра равно 0.
Параметр title задает строку, которая является заголовком окна сообщения. Если параметр отсутствует, то в качестве заголовка используется имя приложения.
Функция окна вывода может иметь еще 2 необязательных параметра (helpfile и context), касающихся справочной информации, относящейся к данному сообщению. О них можно прочитать в справочной системе.
Константы для определении параметра buttons:

-3

Например, в результате выполнения оператора
Ans = MsgBox("Закончить?", vbYesNo + vbQuestion + _
vbDefaultButton1, "Пример окна MsgBox")

появится окно сообщения как на рис. 1.
Чтобы определить, какая кнопка была нажата, значение переменной Ans анализируется с помощью оператора If: Например:
If Ans = vbYes then UserForm1.Hide

Рис. 1.
Рис. 1.

Окно ввода
Окно ввода служит для ввода данных. Оно создается функцией InputBox(), имеющей следующий синтаксис:
InputBox(prompt[, title] [, default] [, xpos] [, ypos] )
Окно содержит сообщение, указывающее какие данные должен ввести пользователь, поле текста для ввода данных и две кнопки ОК и Отмена, которые используются для подтверждения или отмены ввода данных. Закончив ввод данных, пользователь должен щелкнуть на одной из кнопок.
Если щелчок был сделан на кнопке
ОК,  то значением функции является текст, находящийся в поле ввода. Если щелчок был сделан на кнопке Отмена, то значением функции является пустая строка, независимо от  того, что ввел пользователь.
Параметры функции имеют следующий смысл:
prompt – строка сообщения, которая будет напечатана в окне;
title – строка, которая является заголовком окна. Если параметр не указан, то в качестве заголовка используется имя приложения;
default – строка, помещаемая в текстовое поле. Если параметр не указан, то поле текста будет пустым;
xpos – расстояние в твипах от левой границы экрана до левой границы окна. Если параметр не указан, окно центрируется по горизонтали;
ypos – расстояние в твипах от верхней границы экрана до верхней границы окна.
Окно ввода может иметь еще два необязательных параметра (helpfile и context). О них можно прочитать в справочной системе.
Для преобразования введенной строки в другой тип данных используйте функции преобразования типов: CCur(), CDate(), CInt(), CLng(), CSng(), CVar() и другие.
В качестве примера на рис. 2 приведено окно, созданное с помощью оператора:
A = InputBox("Введите значение:", "Пример окна InputBox")

Рис. 2.
Рис. 2.