Вход


Главная страница >> Учебный процесс >> Конспекты >> MS Office. Руководство программиста по Visual Basic для MS Office 97 >> Microsoft Office Assistant >> Использование сообщений Microsoft Office Assistant >> Создание сообщений

Переход на главную страницу

Сервер поддерживается
кафедрой информатики и вычислительной техники ГрГУ
тел. +375-(0)152-445-101
E-mail :
kadan@grsu.grodno.by


[Назад]    [Содержание ]    [Вперед]

  


Создание сообщений


Для создания сообщения предназначено свойство NewBalloon объекта Assistant. (Это свойство возвращает пустое сообщение.) Свойство Mode позволяет определить, как именно должно реагировать сообщение на действие пользователя. Чтобы добавить заголовок к сообщению, используйте свойство Heading, а чтобы добавить текст в тело сообщения, ? свойство Text. Кроме того, в сообщение можно вставить элементы управления и графические изображения. Сформированное сообщение выводится на экран методом Show. Он отображает сообщение в его текущем состоянии, и поэтому метод Show еле дует применять только после того, как Вы задали все свойства сообщения.

Тип сообщения, представляемого объектом Balloon, определяется свойством Mode, которому можно присвоить одну из следующих msoModeType констант: msoModeModal, msoModeAutoDown или msoModeModeless.

Модальное сообщение (msoModeModal) требует к себе полного внимания пользователя: оно перехватывает любой ввод с клавиатуры или от мыши, ограничивая действия с ними окном сообщения. Модальное сообщение следует использовать только для вывода предупреждений или запроса критически важной информации. В следующем примере в модальном сообщении запрашивается подтверждение на закрытие файла без сохранения изменений. По признаку нажатия кнопки (это значение присваивается переменной ret можно определить, следует ли продолжать операцию. Если хотите, используйте этот пример как часть процедуры обработки события, выполняемо при каждом закрытии файла, или возьмите его за основу при создании последовательности сообщений, ?руководящих? пользователем при выполнении какой-либо операции.

Set bin = Assistant. NewBalloon
With bin
     .Mode = msoBalloonModal
     .Heading = "Warning"
     .Text = "If you close this file without saving it, " _
          & "this macro cannot proceed. Close without saving?"
     .Button = msoButtonSetOkCancel
     ret = . Show
End With

Автоматически закрываемое сообщение типа msoModeAutoDown исчезает с экрана, как только пользователь щелкает кнопкой мыши в окне приложения или нажимает какую-нибудь клавишу. Этот тип сообщений больше подходит для отображения подсказок, не критичных для выполняемой операции. В следующем примере мы предлагаем совет по работе с нестандартным диалоговым окном (этот код размещается в процедуре обработки событий для элемента управления, включенного в диалоговое окно). Поскольку тип сообщения ? msoModeAutoDown, оно исчезает, стоит лишь пользователю щелкнуть кнопку мыши в каком-нибудь месте диалогового окна.

hdng = "Selecting a data source"
msg = "in this dialog box, you can specify a workbook " _
     & "or an external table of data to use for input. " _
     & "If you use external data, it must contain delimited " _
     & "fields, rather than fixed-length fields,"
With Assistant
     Set bln = .NewBalloon
     With bln
          .Mode = msoModeAutoDown
          .Button = msoButtonSetOK
          .Heading = hdng
          .Text = msg
          ret = .Show
     End With
End With

Если на экран выводится немодальное сообщение (msoModeModeless), пользователь может продолжить свою операцию (например, печать документа, работу с панелями инструментов или меню). Немодальные сообщения предназначены для отображения инструкций и советов, помогающих использовать программу.

Когда пользователь щелкает элемент управления или кнопку в немодальном сообщении, происходит обращение к процедуре обратного вызова (callback procedure). Ваша программа должна содержать такую процедуру (ее имя указывается в свойстве Callback) ? собственно она-то и реагирует на действия пользователя. Например, щелчок кнопки ОК означает, что пользователь хочет закрыть немодальное сообщение; следовательно, процедура обратного вызова должна применить к сообщению метод Close. В следующем примеры на экран выводятся инструкции по действиям, необходимым для создания отчета. Как только пользователь ?нажимает? кнопку ОК, процедура обратного вызова закрывает сообщение.

Sub DisplaySteps()
     Set bln = Assistant.NewBalloon
     With bln
          .Mode = msoModeModeless
          .Callback = "StepsCallback"
          .BalloonType = msoBalloonTypeNumbers
          .Button = msoButtonSetOK
          .Heading = "To create a new report"
          .Labels(1).Text = "On the File menu, click New Report."
          .Labels(2).Text = "In the New Report dialog box, select the period " _
               & "(monthly, quarterly, or yearly)."
          .Labels(3).Text = "Click the Create button."
          ret = .Show
     End With
End Sub

Sub StepsCallback(bln As Balloon, btn As Long, priv As Long)
     bln. Close
End Sub

Подробнее о свойстве Callback и о процедурах обратного вызова см. раздел ?Использование процедур обратного вызова? далее в этой главе.



[Назад]    [Содержание ]    [Вперед]

  



Текст пособия подготовлен на основе материалов книги
Microsoft Corporation. Руководство программиста по Visual Basic для Microsoft Office 97 / Пер. с англ. - М.: Издательский отдел "Русская Редакция" ТОО "Channel Trading Ltd.", 1997. - 544 с.: илл.
c Оригинальное издание на английском языке,
Microsoft Corporation, 1997
c Русский перевод,
Microsoft Corporation, 1997

  
За содержание страницы отвечает Гончарова М.Н.
©
Кафедра СПиКБ, 2002-2017