Процедура/ функция MsgBox
Мы очень часто в дальнейшем будем использовать процедуру/функцию <$I[] MsgBox > MsgBox для выдачи сообщений пользователю. Сразу же поясним сочетание «процедура/функция». Дело в том, что это имя переопределено и может использоваться и в контексте процедуры, и в контексте функции. Во втором случае MsgBox возвращает результат и может встречаться в операторе присваивания. В коде, который приведен на рис. 3.6, процедура MsgBox используется в самом простом варианте. На рис. 3.7 приведено окно, которое выдается на экран при выполнении MsgBox в процедуре CmdCancel_Click. Рис. 3.7 Простое окно процедуры MsgBox. Заголовок окна на рис. 3.7 содержит наименование вашего проекта. Вы можете изменить этот заголовок на любой текст. В этом окне имеется единственная кнопка ОК (наименование этой кнопки никак не связано с кнопкой ОК на форме), хотя кнопок может быть больше. Такой способ использования MsgBox позволяет установить обратную связь начинающего разработчика программного обеспечения в системе Visual Basic с первыми разрабатываемыми программами. Даже почти не применяя никаких визуальных элементов, вы можете писать программы с целью изучения языковых конструкций Visual Basic, его встроенных функций и так далее. Вы можете, например, просто произвести какие-либо вычисления, а их результаты вывести на экран в диалоговом окне процедуры/функции MsgBox. Самое замечательное в процедуре/функции MsgBox заключается в том, что она может возвращать значение. Возвращаемое функцией MsgBox значение является одной из предопределенных констант и связано с той кнопкой, на которой щелкнул пользователь. Приведем синтаксис[2] функции MsgBox (из справочной системы), хотя на данном этапе вам могут быть понятны не все возможности этой функции: MsgBox(prompt [, buttons ] [, title ] [, helpfile, context ] ) Функция MsgBox принимает следующие именованные аргументы: prompt — обязательный аргумент (о чем свидетельствует отсутствие квадратных кнопок вокруг этого аргумента); <$I[] строковое выражение (string expression) > строковое выражение (string expression), которое является собственно сообщением или вопросом; имеет максимальную длину около 1024 символов (в зависимости от ширины используемых символов); для вывода в окне сообщения специальных символов, например, кавычек, необходимо использовать специальные символы посредством вызова функции <$I[] Chr> Chr с кодами этих символов, например, Chr(34);если сообщение содержит более одной строки, для разбиения его на строки необходимо использовать символы 13 (символ возврата каретки) и 10 (символ перехода на одну строку) в виде строки Chr(13) & Chr(10). buttons — необязательный параметр; численное выражение, которое является суммой значений, определяющих число и тип отображаемых в окне сообщения кнопок, стиль используемого в окне значка, номера кнопки по умолчанию и модальность окна сообщения (свойство, которое позволяет или запрещает продолжать работу приложения без закрытия окна функции MsgBox); если параметр опущен, используется по умолчанию значение 0. title — необязательный параметр; строковое выражение, отображаемое в заголовке окна; если аргумент опущен, в качестве заголовка используется имя приложения. helpfile — необязательный параметр; строковое выражение, которое является именем файла помощи[3], который вы ранее уже подготовили, используя Windows Help Compiler. context — необязательный параметр; указывает определенный раздел справочной системы, который должен отображаться при выборе пользователем кнопки Справка; если аргумент helpfile используется, то context обязателен. В следующей таблице приводятся некоторые предопределенные константы аргумента buttons:
В следующей таблице приводятся предопределенные константы, которые возвращаются функцией MsgBox.
|