Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лек 09 VB Окна сообщений.doc
Скачиваний:
5
Добавлен:
09.11.2019
Размер:
115.2 Кб
Скачать

Размещение сообщения в нескольких строках

Если текст сообщения достаточно длинный, то оно будет автоматически разбито на несколько строк. Если это разбиение вас не устраивает, то вы можете выполнить разбиение сами с помощью константы vbCrLf, которая включает символы конца строки и перевода каретки в начало следующей. Для суммирования строк рекомендуется использовать знак ” & ” вместо знака ” + ”,

Dim sMessage As String текст сообщения

sMessage = ”Вы действительно хотите” & vbCrLf & ”завершить работу ?”

Пример использования функции MsgBox

Приведённый ниже код выводит на экран запрос о подтверждении завершения работы приложения.

Dim sMessage As String текст сообщения

Dim sTitle As String заголовок окна

Dim nBattons As Integer ‘ параметр, определяющий набор кнопок и вид пиктограммы

Dim nResult As Integer ‘ код клавиши, нажатой пользователем

sMessage = ”Вы действительно хотите завершить работу ?”

sTitle = ”Завершение работы” ‘ определение заголовка окна сообщения

nBattons = vbYesNo + vbInformation ‘ определение стиля окна сообщения с кнопками “Да” и “Нет”

‘ и пиктограммой с символом “i

nResult = MsgBox ( sMessage , nBattons , sTitle ) ‘ отображает на экране окно сообщений

‘ и передаёт переменной nResult код нажатой пользователем кнопки

IF nResult = vbYes Then ‘ если пользователь нажал кнопку “Да”

End ‘ завершение программы

End If

Пример использования процедуры MsgBox

Если окно сообщения содержит одну кнопку и анализировать код нажатой кнопки не нужно, то удобно использовать процедуру MsgBox, которая имеет тот же синтаксис, что и функция, но не использует скобки, в которые помещают её параметры.

Приведённый ниже код выводит на экран сообщение о назначении программы.

Dim sMessage As String текст сообщения

Dim sTitle As String заголовок окна

Dim nBattons As Integer ‘параметр, определяющий набор кнопок и вид пиктограммы

sMessage = "Программа вычисляет корни квадратного уравнения.” & vbCrLf & _

“Введите значения коэффициентов a, b, с ” & vbCrLf & _

”и нажмите кнопку ‘’Вычислить’’."

sTitle = ”О программе” ‘определение заголовка окна сообщения

nBattons = vbOKOnly + vbInformation ‘отображение кнопки ОК и пиктограммы Информация

MsgBox sMessage , nBattons , sTitle вызов процедуры MsgBox

Окно ввода

Если для работы программы нужно ввести некоторую информацию, то для этого можно использовать специальное средство – окно ввода. В окне ввода отображается сообщение, предлагающее пользователю ввести что-либо, текстовое поле, в котором он может набрать нужный текст и две кнопки (ОК и Отмена). При нажатии кнопки ОК возвращает значение, находящееся в текстовом поле окна ввода. При нажатии кнопки Отмена функция InputBox возвращает пустую строку. С точки зрения программирования, работа с окнами ввода и окнами сообщений очень похожа.

Функция возвращает строку, введённую пользователем. Длина возвращаемой строки не более 255 символов. Синтаксис функции InputBox имеет вид:

InputBox ( promt , [ title ] , [Default] , [ XPos ] , [YPos] , [helpfile] , [contex]) As String

promt – обязательный параметр; строковое выражение, содержащее текст сообщения. Максимальная длина строки – 1024 символа;

title – необязательный параметр; строковое выражение, отображаемое в заголовке окна. Максимальная длина строки – около 60 символов, зависит от размера шрифта используемого в заголовках окон;

Default – необязательный параметр; строковое выражение, отображаемое в поле ввода;

XPos, YPos – необязательные параметры; начальное положение окна.

Прежде чем использовать в программе введённое пользователем значение, его нужно проверить. Для определения размера текстовой строки используется функция Len. Проверка типа данных обычно выполняется с помощью функции Val.