Программирование >>  Проектирование интерфейса пользователя 

1 ... 54 55 56 [ 57 ] 58 59 60 ... 153


что и Put. Единственное различие команд состоит в том, что для использования Get файл должен быть открыт в режиме Read или Read Write.

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

Функции интерактивного ввода данных

Если задача, над которой вы трудитесь, предполагает активное взаимодействие с пользователем, целесообразно прибегнуть к средствам создания

форм. Вопросы проектирования и построения форм подробно освещены в

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

Синтаксис вызова функции MsgBox таков:

▼ MsgBox ( Сообщение [, Кнопки] [, Заголовок] [, ФайлСправки, НомерТемы] )

Вызов функции MsgBox приводит к открытию модального окна. Термин модальный означает, что пока такое окно открыто, все другие окна приложения остаются недоступными для пользователя. В качестве аргумента Сообщение может использоваться переменная, именованная константа или литеральное значение символьного типа, содержащее собственно текст сообщения. Параметр Кнопки - одно из значений предопределенного перечислимого типа, например или Полный список допустимых значений параметра Кнопки легко найти в оперативной справочной системе, задав ключевое слово поиска MsgBox. Необязательная пара аргументов ФайлСправки и НомерТемы содержит имя И LP-файла справки и номер темы - число,

которое было назначено определенной теме справки при создании файла. Если оба параметра заданы верно, нажатие клавиши <F1> после открытия окна сообщения приведет к загрузке приложения справки и отображению указанной темы.

InputBox служит для получения информации от пользователя.

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

синтаксиса функции InputBox, приведенным ниже.

InputBox ( Сообщение [, Заголовок] [, ЗначениеПоУмолчанию] . т. [, Абсцисса] [, Ордината] [, ФайлСправки, НомерТемы] )

Функция InputBox открывает модальное окно, содержащее две кнопки ОК и Cancel. После щелчка на кнопке ОК программа получает строку данных, введенных пользователем в поле диалогового окна. Щелчок на кнопке Cancel приводит к возврату строки нулевой длины. Символьный аргумент Сообщение уведомляет пользователя о том, какого рода данные требуются программе. Необязательный параметр Заголовок содержит строку, которая будет отображаться в заголовке диалогового окна. Аргумент ЗначениеПоУмолчанию позволяет задать символьную строку, кото-



рую пользователь сможет сразу принята кнув на кнопке ОК) или отредактировать. Факультативные параметры Абсцисса и Ордината дают возможность задать декартовы координаты левого верхнего угла диалогового окна на экране. Если эти параметры не указаны, окно располагается в центре экрана. О назначении аргументов ФайлСправки и НомерТемы говорилось ранее, когда речь шла о синтаксисе вызова функции MsgBox.

Функция MsgBox применяется для вывода окна, содержащего сообщение об ошибке, и о возникновении особых условий. Она также регламентирует дальнейшие действия, например:

MsgBox( Обка деления на нуль - введенные данные неверны! , vbExclamaton )

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

Dim UserName As String

UserName = InputBox( Введите имя полвзователя , Имя , Guest )

При выполнении указанного кода открывается диалоговое окно, озаглавленное строкой Имя, и пользователю предлагается возможность отредактировать строку Guest, заданную по умолчанию. После щелчка на кнопке ОК переменной UserName будет присвоено введенное значение; щелчок на кнопке Cancel приводит к очистке

содержимого переменной UserName.

Еще раз об оперативной справочной системе

В недрах библиотек VBA таятся сотни и сотни функций, процедур, команд и объектов со своими методами и свойствами. Чтобы найти и использовать их, необходимо. сформулировать задачу, сведя ее описание к емкому существительному или глаголу.

После этого следует обратиться за помощью к файлам оперативной справочной системы Microsoft Access и Visual Basic. Откройте окно Справка Microsoft Visual Basic, перейдите на вкладку Указатель (Index) и введите одно из ключевых слов.

До сих пор мы имели дело преимущественно с функциями и процедурами. Термины метод и свойство имеют отношение к проблематике объектно-ориентированного программирования. Методы - это функции и процедуры, а свойства - элементы данных, служащие частью определенного класса. Более подробные сведения об использовании классов и создании объектов вы узнаете из главы 21-й час. Основы программирования классов .

Резюме

В арсенале программиста, выбравшего язык VBA, - сотни предопределенных функций и процедур. В вашем распоряжении также достаточно большой объем кода, когда-либо написанного на языках BASIC и Visual Basic. В ходе этого занятия были рассмотрены наиболее употребительные функции обработки строк, интерактивного ввода данных и выполнения файловых операций. Файлы оперативной справки VBA хранят много дополнительных сведений. Коммерческие продукты, разрабатываемые сторонними производителями, - еще один неисчерпаемый источник решений и технологий.



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

На следующих занятиях вы научитесь применять полученные знания для решения задач управления базами данных, проектирования пользовательских интерфейсов и создания сложных типов данных. Все приемы программирования, которые будут рассмотрены позже, основываются на фундаменте, заложенном нашими совместными усилиями. Раздел вопросов и ответов прольет дополнительный свет на ряд тем, рассмотренных на этом и предыдущих занятиях.

Вопросы и ответы

Вопрос. Каким образом можно решить задачу поиска и замены строк, чтобы ее реализация была схожа с той, которая предлагается, скажем, в Microsoft Word?

Ответ. Конечно, подобные функции вы вполне смогли бы реализовать самостоятельно. Впрочем, имеется достаточно образцов готового кода, и, вероятно, существуют решения аналогичных задач. Немного побродив по просторам Web, вы наверняка найдете все то, что ищете.

Вопрос. Можно ли, решая задачи в среде Access, использовать инструменты Word или Excel для управления данными?

Ответ. Да. Word, Excel и другие приложения из состава Microsoft Office XP обладают интерфейсами OLE Automation. Это означает, что из среды прикладных программ Access вы можете обращаться к этим приложениям и их службам. Глава 24-й час. Управление информацией о контактах Outlook содержит примеры, касающиеся вопросов взаимодействия программ Access 2002 и Outlook 2002.

Вопрос. Имеет ли смысл постоянное использование текстовых или двоичн1х файлов для хранения данных?

Ответ. По большому счету, нет. Подчас это бывает удобно или необходимо, но вообще, любой код, предназначенный для манипуляций с данными, должен предполагать

использование табличных структур. С этой точки зрения система Access весьма удобна, и если вы сделаете выбор в ее пользу, то многое приобретете и ничего не потеряете.

Задания

Ниже приведены тестовые задания и упражнения, которые помогут вам самостоятельно проверить уровень освоения материала, изложенного в этой главе. Ответы на вопросы вы найдете в приложении.

Тесты

1. Как называется функция, предназначенная для поиска подстрок?

2. В чем принципиальное отличие модальных окон от остальных?

3. Как должна выглядеть команда открытия текстового файла в режиме чтения?

4. Какую функцию можно использовать для интерактивного ввода данных?



1 ... 54 55 56 [ 57 ] 58 59 60 ... 153

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика