Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Excel_new.doc
Скачиваний:
97
Добавлен:
22.02.2015
Размер:
5.05 Mб
Скачать
      1. Диалоговые функции

Современный стиль программирования ориентирован на дружеский интерфейс, позволяющий уточнить процесс обработки данных. В профессионально разработанных программах пользовательский интерфейс занимает около 90% объема кода и только 10% используется для обработки данных. Наряду со стандартными приемами передачи данных (через таблицы, файлы и др.) здесь важное место отводится диалогу.

        1. MsgBox()

Для передачи пользователю некоторого текстового сообщения и получения простых ответов типа "Да" - "Нет" используется функция MsgBox(). Эта функция выводит на экран диалоговое окно, содержащее сообщение и группу кнопок, устанавливает режим ожидания нажатия кнопки пользователем, а затем возвращает значение целого типа, указывающее, какая кнопка была нажата. В простом представлении (без справки) функция имеет следующий синтаксис: MsgBox(prompt[, buttons] [, title]).

Таблица 4.36

Константа

Значение

Описание

Группа 1. Число и тип кнопок

VbOKOnly

0

Отображается только кнопка "OK".

VbOKCancel

1

Отображаются кнопки "OK" и "Отмена" (Cancel).

VbAbortRetryIgnore

2

Отображаются кнопки "Прервать" (Abort), "Повторить" (Retry) и "Пропустить" (Ignore).

VbYesNoCancel

3

Отображаются кнопки "Да", "Нет" и "Отмена" (Cancel).

VbYesNo

4

Отображаются кнопки "Да" (Yes) и "Нет" (No).

VbRetryCancel

5

Отображаются кнопки "Повторить" (Retry) и "Отмена"

Группа 2. Тип значка

VbCritical

16

Используется значок "Критическое сообщение".

VbQuestion

32

Используется значок "Предупреждающий запрос".

VbExclamation

48

Используется значок "Предупреждение".

VbInformation

64

Используется значок "Информационное сообщение".

Группа 3. Основная кнопка

VbDefaultButton1

0

Основной является первая кнопка.

VbDefaultButton2

256

Основной является вторая кнопка.

VbDefaultButton3

512

Основной является третья кнопка.

VbDefaultButton4

768

Основной является четвертая кнопка.

Группа 4. Модальность окна ()МО) сообщения

VbApplicationModal

0

МО на уровне приложения: для работы с текущим приложением, необходимо ответить на сообщение.

VbSystemModal

4096

МО на уровне системы: приложения недоступны до тех пор, пока пользователь не ответит на данное сообщение.

Параметры

  • Prompt (обязательный параметр) - строковое выражение, отображаемое как сообщение в диалоговом окне. Максимальная длина текста составляет приблизительно 1024 символов и зависит от ширины используемых символов. Текст может состоять из нескольких физических строк.

  • buttons (кнопки) - числовой код, позволяющий определить совокупность кнопок и их статус. По умолчанию buttons=0 (одна кнопка "ОК"). В табл. 4.4 перечислены допустимые значения этого аргумента. При определении комплексного значения аргумента buttons следует суммировать значения кнопок, но не более одного из каждой группы.

  • title - заголовок диалогового окна. Если этот аргумент опущен, в строку заголовка помещается имя приложения.

Примечание. Приведенные в таблице константы определены в языке Visual Basic. Использование имен этих констант вместо их значений допускается в любом месте программы.

Возвращаемые функцией значения приведены в табл. 4.5.

Дополнительные сведения. Если окно диалога содержит кнопку "Отмена" (Cancel), нажатие клавиши ESC эквивалентно нажатию этой кнопки.

Пример

Программный модуль

Комментарий

Public Sub cc()

Dim dd As Integer, ddd As Integer

dd = MsgBox(Title:="Веселый диалог", _

"_" - Перенос оператора

Prompt:="Привет старина! Хочешь поговорить?", _

Подстановка параметров

Buttons:=4)

- в любом порядке

Select Case dd

Пример использования

Case vbYes

оператора Select Case

ddd = MsgBox(prompt:="Я рад, но говорить пока не о чем", _

Нажата кнопка "Да"

Title:="Веселый диалог")

Case vbNo

ddd = MsgBox(prompt:="Не хочешь? Ну, как хочешь!",

Нажата кнопка "Нет"

_ Title:="Веселый диалог")

End Select

End Sub

Рис.4.74. Веселый диалог

Результаты диалога представлены на рис. 4.4. Первая панель - результат первого вызова функции . Появление второй или третьей панели зависит от того, какая кнопка нажата - "Да" или "Нет".

Таблица 4.37

Константа

Значение

Нажатая кнопка

VbCancel

2

Отмена (Cancel)

VbAbort

3

Прервать (Abort)

VbRetry

4

Повторить (Retry)

VbIgnore

5

Пропустить (Ignore)

VbYes

6

Да (Yes)

VbNo

7

Нет (No)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]