русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Функции для организации взаимодействия с пользователем


Дата добавления: 2015-08-31; просмотров: 779; Нарушение авторских прав


Во многих программах VBA необходимо обеспечить взаимодействие с пользователем — проинформировать его о чем-то и, возможно, получить от него ответную реакцию. В принципе, для пользователя можно просто вывести текст в окне приложения (например, в текущем документе Word) или воспользоваться формой и элементами управления. Как это делается — мы узнаем в гл. 5, посвященной работе с формами и элементами управления, и в гл. 10—75, в которых речь пойдет об объектных моделях приложений Office. В этом разделе мы рассмотрим только применение для этой цели встроенных функций VBA.

Самой простой способ вывести информацию пользователю — воспользоваться встроенной функцией VBA MsgBox(). Примеров применения этой функции в нашей книге уже было множество, а полный ее синтаксис выглядит так:

MsgBox(Текст [, кнопки][, заголовок_окна][, файл_справки, метка_в_файле_справки])

Возможностей у MsgBox() достаточно много:

r можно отображать разное количество кнопок (OK, Cancel, Abort, Retry, Ignore, Yes, No);

r можно показывать символы Critical (красный круг с крестом), Exclamation (восклицательный знак в желтом треугольнике), Question (вопросительный знак), Information (буква "I");

r можно выбирать кнопку по умолчанию;

r можно делать окно модальным или обычным.

В зависимости от того, на какую кнопку нажал пользователь, функция возвращает соответствующее значение (всего 7 вариантов). Подробнее читайте в справке по VBA. Пример возврата значения от MsgBox () может быть таким:

Dim nVar As Integer

nVar = MsgBox ("Будем делать?", vblnformation + vbOKCancel, _

"Демонстрационное окно сообщения")

Если значение nVar равно 1, то пользователь нажал ОК, если 2, то Отмена(Cancel).

Иногда (например, при пакетной обработке данных) хотелось бы, чтобы окно сообщения через некоторое время закрывалось само собой. Это можно сделать при помощи метода Popup() объекта Wscript. shell. Для этого в проект через меню Tools | Referencesнужно добавить ссылку на Windows Script Host Object Model, а после этого использовать следующий код:



Dim oShell As New WshShell

oShell.Popup "Test", 5

В остальном функциональность получившего окна одинакова с MsgBox(). Код возврата, если пользователь не нажал ни на какую кнопку, равен -1.

Самый простой способ принять информацию от пользователя — воспользоваться функцией InputBox (). Все очень просто:

Dim InputName

InputName = InputBox("Введите Ваше имя")

MsgBox ("Вы ввели: " &InputName)

Для InputBox() можно указать текст приглашения, заголовок окна, значение по умолчанию, местонахождение окна и файл справки. Не забывайте, что все вводимое пользователем InputBox()автоматически переводит в тип данных String, может потребоваться преобразование.

Можно привлечь внимание пользователя звуковым сигналом. Для этой цели используется оператор Веер:

Dim i

For i = 1 То 3

Beep

Next i

Если нужно обеспечить более сложное взаимодействие с пользователем, можно подумать о применении формы, возможностей самого документа Office или помощника (Office Assistant). Очень мощные возможности обеспечивает и применение объектной модели Internet Explorer.



<== предыдущая лекция | следующая лекция ==>
Функции для работы с датой и временем | Функции — заменители синтаксических конструкций


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.822 сек.