Введение.
Данная глава представляет собой
обзор Microsoft Visual Basic версии 5 (Далее мы будем называть ее Visual
Basic или просто VB, чтобы отличить текущую версию от более ранних, будем
использовать сокращения VB4 или VB3). В настоящее время доступны 4 версии
данного языка, значительно отличающиеся по возможностям.
Почему
Windows и почему Visual Basic?
Графические интерфейсы пользователя,
или GUIs, революционизировали микрокомпьютерную индустрию. Они продемонстрировали,
что выражение "Лучше один раз увидеть, чем сто раз услышать не потеряло
своего смысла для большинства пользователей компьютеров. Вместо загадочной
командной строки. С:>, которую как долго наблюдали пользователи DOS, теперь
они смотрят на "рабочий стол" (desktop), заполненный значками программ,
управляя ими при помощи мыши или посредством меню.
Вероятно, при длительном использовании
Windows то, как выглядят приложения, менее важно, чем-то, как они созданы.
В Windows, как правило, программы имеют стандартный интерфейс пользователя.
Это означает, что пользователи потратят больше времени на работу с приложением
и меньше на изучение меню, диалоговых панелей и комбинации клавиш (Конечно,
приложения Windows 95 и Windows NT 4.0 выглядят немного не так, как приложения
Windows 3.1: стандарты сохраняются внутри версий Windows, а не между ними).
В то время как программисты
испытывают смешанные чувства к GUIs, он нравится начинающим пользователям,
поэтому от любых программ Windows ожидается соответствие модели GUI. Поэтому,
если необходимо разработать программу для любой из версий Windows, программисту
понадобится эффективное средство для разработки приложений с графическим
интерфейсом пользователя.
За все это долгое время существовало
лишь несколько таких средств разработки. До появления Visual Basic в 1991
году разработка приложений Windows была намного тяжелее процесса создания
приложений для DOS. Программисты должны были позаботиться буквально обо
всем, например, о работе с мышью, обработке событий меню, и даже отслеживать,
щелкнул пользователь один либо два раза в конкретном месте экрана. Разработка
приложений Windows требовала экспертных знаний по программированию на языке
С и сотен строк кода для выполнения простейшие задач. Проблемы были даже
у профессионалов. (Комплект Microsoft Windows Software Development Kit,
необходимый в то время в дополнение к компилятору С, весил тогда около
пяти килограммов).
Вот почему, когда появился
Visual Basic 1. 0, Билл Гейтс, глава и владелец компании Microsoft, назвал
ею "внушительным". Стив Гибсон из Infoworld описал данный язык как "новое
великолепное чудо", которое сильно изменит взгляд людей на использование
Microsoft Windows". Стюарт Олшоп, давая интервью газете "New York Times",
назвал Visual Basic "идеальной средой разработки программ 90-х годов".
Чарльз Петцольд, автор одной из классических книг по программированию на
С для Windows, писал в "New York Times": "Для тех из нас, кто всю свою
жизнь посвятил обучению сложностям программирования Windows, Visual Basic
представляет реальную угрозу потерять средства к существованию". Последняя
версия Visual Basic продолжает данную традицию: сложные приложения Windows
95 и Windows NT разрабатываются теперь за гораздо меньший период времени.
Ошибки в программах (bugs) возникают не так часто, и их локализация происходит
быстрее и легче. С Visual Basic программирование в Windows не становится
более эффективным, но оно становится более простым (в большинстве случаев).
Примечание: Последняя версия
Visual Basic предназначена для Windows 95 и Windows NT; ее нельзя использовать
при разработке приложений для Windows 3.1.
В частности. Visual Basic позволяет
добавлять к окнам поля ввода (text boxes), меню, командные кнопки (command
buttons), переключатели (option buttons), флажки (check boxes), списки
(list boxes), линейки прокрутки (scroll bars), a также диалоговые окна
для выбора файла или каталога. Программист может использовать сетку (grid)
для обработки табличных данных, организовать взаимодействие с другими приложениями
Windows и доступ к базам данных. (Кстати, в Visual Basic такие компоненты
обычно называют элементами управления.)
На экране одновременно может
находиться несколько окон. Они должны иметь полный доступ к буферу обмена
(clipboard) и к информации большинства приложений Windows, работающих в
то же время. Можно использовать Visual Basic для взаимодействия с другими
приложениями, работающими под управлением Windows, используя наиболее современную
версию технологии OLE фирмы Microsoft.
Однако все более ранние версии
Visual Basic могли в той или иной степени выполнять вышеописанные задачи.
Что же особенного добавлено к последней версии Visual Basic? В двух словах
ответ состоит в том, что Visual Basic теперь поддерживает элементы ActiveX.
Примечание: Если читатели
еще не знакомы с этим последним писком моды, то вот его краткое описание
-ActiveX представляет собой технологию Microsoft для активизации работы
с Интернет и корпоративными интернет-сетями, причем данная технология может
использоваться в обычных приложениях Windows для увеличения продуктивности
работы пользователей. Идея состоит в том, что появляется возможность загрузить
из Интернет небольшой компонент. Эта программа увеличивает функциональность
вашего броузера или операционной системы. (Кстати, обычным термином для
такого небольшого компонента является наименование "элемент управления
ActiveX". Существуют специальные версии элементов управления, о которых
мы только что говорили.)
Приведем пример того, как пользователь
может загрузить компоненты ActiveX для добавления полезных функций к странице
Web. Предположим, что на ней размещена движущаяся картинка и он хочет загрузить
ее к себе на компьютер и просмотреть. У Microsoft есть компонент ActiveX
Movie, загрузить его можно из ActiveX Gallery no адресу www.microsoft.com/activex/gallery,
а затем использовать. Более того, добавив его один раз к своей системе,
пользователю не придется загружать его еще раз. Каждый раз, когда страница
Web будет содержать объект "active movie", броузер Internet Explorer (а
вскоре и Netscape Navigator) сможет использовать один и тот же элемент
Active Movie уже из операционной системы пользователя для просмотра видеоматериала.
Примечание: Даже фирма Netscape
объявила о поддержке ActiveX в следующих версиях Navigator. Дополнительный
модуль (plug-in) к Netscape Navigator 3 для Windows 95, предназначенный
для поддержки ActiveX, уже доступен от лаборатории NCompass (www.ncompasslabs.com).
Большинство наиболее интересных
элементов управления в Visual Basic являются элементами ActiveX, поэтому
их можно использовать без изменений в броузере с поддержкой ActiveX. Два
примера - это сетка (grid control) и элемент управления, использующий одну
из стандартных диалоговых панелей для обработки файлов. Даже элементы ActiveX,
наиболее мощные из всех, занимают менее чем 200 килобайт каждый. Более
специализированные (но тем не менее очень мощные) элементы ActiveX, укладываются
в 20 килобайт. На одну дискету 3,5 легко можно уместить 50 наиболее мощных
элементов ActiveX.
Примечание: Некоторые из
наиболее общих элементов управления, такие как поля ввода и командные кнопки
Visual Basic, фактически не являются стандартными элементами ActiveX; их
обычно называют внутренними элементами управления (intrinsic controls).
Это происходит из-за того, что они автоматически становятся частью программы
на Visual Basic и не могут находиться вне ее, в отличие от элементов ActiveX.
Смысл всего вышесказанного
состоит в том, что если выбрать одну из многих новых возможностей Visual
Basic 5 с целью объяснить, в чем ее сильное отличие от ранних версий, то
можно сказать так: "Можно строить свои собственные элементы управления
ActiveX полностью на базе Visual Basic". Впервые программисты на Visual
Basic могут расширять данный язык, используя только его возможности. Теперь
они могут создавать свои элементы ActiveX, тем самым используя полностью
всю мощь и простоту Visual Basic, которые всегда являлись отличительными
чертами данного языка.
На этом этапе может возникнуть
вопрос о производительности: работают ли приложения Visual Basic 5 медленнее
по сравнению с более ранними версиями языка? Ответом будет сенсационное
"Нет!". Фактически профессиональные версии Visual Basic 5 впервые могут
генерировать исполняемый код (т.е. создавать исполняемые ЕХЕ-модули). Предыдущие
версии Visual Basic бьши интерпретаторами. Если не вдаваться в отличия
между компилятором и интерпретатором VB, то результатом является исполнение
программ Visual Basic 5 со скоростью в 10-20 раз быстрее, чем это было
в предыдущих версиях.
Что
необходимо для работы с Visual Basic?
Все версии Visual Basic занимают
много места на жестком диске. Даже самая небольшая (и наименее мощная)
бесплатная версия Control Creation edition требует около 10 Мбайт свободного
места на диске, процессор 486 или Pentium, а также не менее 16 Мбайт оперативной
памяти. Полная инсталляция самой мощной версии Visual Basic Enterprise
edition требует более 100 Мбайт дискового пространства.
Примечание: Коммерческие
(не бесплатные) версии Visual Basic поступают с полной документацией, поставляемой
обычно на бумаге, но кроме этого на компакт-диске присутствует электронная
версия документации, называемая "Books Online". Ее можно установить на
жесткий диск для увеличения скорости работы. Это потребует около 20 Мбайт
дискового пространства.
Совет: Не устанавливая определенные
компоненты, можно уменьшить размер необходимого для работы дискового пространства.
Но нельзя уменьшить требования ни к скорости процессора, ни к количеству
оперативной памяти. Если количество оперативной памяти не соответствует
требованиям или используются недостаточно быстрые микропроцессоры, то запустить
Visual Basic все равно можно, но это будет очень неприятный эксперимент.
Установка
Visual Basic
Visual Basic обычно поставляется
на CD. Бесплатную версию Control Creation edition можно загрузить из Интернет
(это около 8 Мбайт). Если Вы приобрели Visual Basic 5, рекомендуем заполнить
и выслать регистрационную карточку. Несомненно, что по электронной почте
придет определенное количество ненужных писем, но зато так проще получить
техническую поддержку и извещения об обновленных версиях от Microsoft.
Запуск
программы установки
Компакт-диск или дискеты с
Visual Basic содержат программу установки Setup. Версия Control Creation
edition представляет собой самораспаковывающийся ЕХЕ-файл. Все версии требуют
наличия на компьютере Microsoft Windows 95 или Windows NT 3.51 (или их
более новые версии).
Запустить программу Setup
можно столько раз, сколько необходимо, что означает отсутствие ограничений
на выбор различных вариантов установки (неплохая идея для начинающих пользователей
- применять установки по умолчанию). При первой установке программа Setup
запрашивает имя пользователя и наименование компании. Программа сохраняет
данную информацию и выводит ее каждый раз при запуске среды разработки
Visual Basic.
Мы полагаем, что Вы за свою
жизнь инсталлировали достаточно программ Windows. Если используется одна
из коммерческих версий Visual Basic, нужно перейти к программе Setup.ехе
на компакт-диске или на первой дискете и просто запустить ее на выполнение.
Если устанавливается версия Control creation Edition, нужно дважды щелкнуть
по названию файла VB5Ccein.exe из Windows Explorer. Здесь нодо следовать
инструкциям на экране.
После завершения процедуры
инсталляции Visual Basic будет установлен со своей собственной группой
программ. Для перемещения Visual Basic из одной группы программ в другую
либо на рабочий стол можно использовать Windows Explorer или технологию
drag-and-drop. Для этого требуется изучить документацию по Windows или
прочитать книгу типа "Windows 95 Made Easy" Тома Шелдона.
Если имеются какие-либо дополнения
или исправления к документации, их можно обнаружить в файле типа Readme.
txt. Если данный файл есть на дистрибутивных дискетах или CD, программа
установки автоматически копирует его на винчестер и размещает значок на
рабочем столе Windows в группе программ Visual Basic. Теперь, если дважды
щелкнуть по этому значку, Microsoft Windows загружает данный файл в редакторе
WordPad. Это помогает легко изучить его содержимое.
Примечание: Для Visual Basic
не требуется явной установки принтера, так как он использует информацию
о текущем принтере в Windows.
Запуск
Visual Basic
Самый простой способ запустить
Visual Basic в Windows 95 или Windows NT 4.0 состоит в использовании пункта
Программы главного меню Пуск. (Программа установки автоматически добавляет
Visual Basic в главное меню Пуск.) На рис. 1-1 приведен примерный вид того,
что будет видно на экране. Кроме того, запустить Visual Basic можно, перейдя
в его каталог при помощи значка "Мой компьютер на рабочем столе Windows".
Затем необходимо дважды щелкнуть по значку Visual Basic. Запустить Visual
Basic можно, открыв диалоговую панель "Выполнить" из главного меню и введя
путь к Visual Basic. (В Windows 95 или в Windows NT 4.0 существует множество
различных вариантов запуска программ.)
Когда Visual Basic начинает
загружаться, пользователь видит экран с информацией об авторских правах,
где указывается, кем лицензирована данная копия программы. После этого
на экране появится картина, примерно соответствующая рис. 1 -2. (Точный
вид экрана зависит от версии Visual Basic.) Диалоговая панель New Project
позволяет начать работу по созданию приложения Visual Basic любого типа.
В данной главе рассматривается только один тип приложения - Standard ЕХЕ
- сокращение от наименования "обычная автономная программа".
Работа
с Visual Basic
В данном разделе будет описано
создание двух приложений. Первое мы создадим буквально вручную, оно представляет
собой обычное окно с кнопками Maximize, Minimize и Exit. Для второго приложения
будет использован Application Wizard (мастер приложений), поставляемый
с Visual Basic, применяемый при построении интерфейсов к программам. Такой
тип приложений носит название MDI (multiple document interface). Как и
в обычной среде разработки, поставляемой с Visual Basic, данные приложения
позволяют добавлять окна внутри родительского окна.
Рисунок 1-1.Типичный список программ,
выводимый по кнопке Пуск в Windows 95.
Кроме того, в приложениях будет
присутствовать расширяемое меню, содержащее ряд стандартных пунктов: File,
Help и так далее. Application Wizard генерирует большое количество полезного
кода автоматически. Поэтому требуется добавить только небольшое количество
дополнительного кода, чтобы полностью "оживить" все автоматически созданные
возможности. (Конечно, написание такого кода потребует дополнительных знаний
о программировании в Visual Basic. Application Wizard представляет собой
мощное, но всего лишь вспомогательное средство программирования; он не
может полностью заменить программиста.)
Простое
приложение
Как отмечалось ранее, при запуске
Visual Basic его первый экран будет выглядеть так, как на рис. 1-2. В диалоговой
панели New Project, показанной на рис. 1 -2, следует дважды щелкнуть на
значку Standard EXE (она первая на рисунке).
Программа тут же перейдет
в режим, показанный на рис. 1 -3. Отметим, что пустое окно носит имя Projecti-Form1
(Form). Внутри него находится другое окно с названием Form1, в котором
видна сетка из точек. Это и есть форма, которую можно модифицировать. Сетка
используется для выравнивания элементов управления на экране, таких, как
командные кнопки и списки.
При запуске проекта (или его
компиляции с целью независимого запуска от среды разработки Visual Basic),
формы, наподобие Form1, становятся окнами, которые и видит пользователь.
Вверху пустой формы размещается строка заголовка (title bar) с заголовком
формы (caption). Заголовком в Visual Basic называется текст в строке заголовка
конкретного окна. В настоящий момент форма озаглавлена по умолчанию как
Form1; такой заголовок Visual Basic присваивает форме в начале работы над
новым проектом. Слева от окна Form1 на рис. 1-3 размещается окно панели
инструментов (toolbox), в котором видны элементы управления, доступные
к размещению на форме. (Как было отмечено до этого, элемент управления
представляет собой термин, используемый в Visual Basic для объектов, размещаемых
на форме при ее создании.) Справа от окна формы размещаются еще три окна.
Верхнее носит название Project Explorer. Непосредственно под ним находится
окно Properties, где устанавливаются различные свойства формы и элементов
управления на ней. Справа внизу размещается окно Form Layout, рассказать
о функциях которого можно за несколько секунд.
Рисунок 1-2. Первый экран при запуске
Visual Basic.
Теперь сконцентрируем внимание
на центральном окне с названием Project1 -Form 1 (Form) и дополнительном
окне внутри его с наименованием Form1. В большинстве приложений Visual
Basic размер и местоположение формы в момент окончания ее разработки (обычно
это называют временем создания) определяют размеры того, что пользователь
видит на экране в момент работы программы. Это не означает того, что в
Visual Basic нельзя изменить размер или местоположение форм при запуске
проекта; фактически одним из основных достоинств Visual Basic является
возможность производить динамические изменения в ответ на события, генерируемые
как реакция на действия пользователя.
Изменим размер окна Project1
с тем, чтобы оставить побольше места для работы с формой внутри его. Для
этого необходимо просто щелкнуть по кнопке Maximize. Результат показан
на рис. 1 -4.
Сейчас стало больше
места для работы с окном Form1, попробуем изменить его размер. Опишем один
из способов изменения размеров формы, который является общим для всех приложений
Windows. Сперва необходимо щелкнуть мышью внутри формы, чтобы она стала
активной. (Всегда можно определить, является ли окно активным, поскольку
его заголовок выделяется цветом.) Затем сдвинем курсор мыши к любой части
рамки окна формы. При этом он должен изменить свой вид на двунаправленную
стрелку. С этого момента размеры формы можно изменять, двигая курсор по
экрану.
Для того чтобы начать разработку
первого тестового приложения, необходимо сделать следующие шаги:
1. Изменить размер формы по умолчанию, пользуясь
технологией, описанной выше.
2. Запустить проект, нажав F 5 либо выбрав пункт
Start из меню Run (ALT+R,S).
Отметим, что на экране появляется
обычное окно Windows, размеры которого совпадают с размерами окна в режиме
разработки. Кроме того, данное окно имеет все стандартные черты окон Windows,
такие, как границы с изменением размера, оконное меню управления (в левом
верхнем углу), а также кнопки Maximize, Minimize и Exit в правом верхнем
углу. Данный факт иллюстрирует одну из основных особенностей Visual Basic:
созданная программистом форма становится окном, по умолчанию получающим
все стандартные характеристики окна текущей версии Windows, причем для
этого не нужно писать ни одной строчки кода.
Рисунок 1-3. Первоначальное состояние
среды разработки Visual Basic.
Вернемся в среду разработки,
нажав ALT+F4 либо дважды щелкнув по оконному меню управления в форме Form1,
или щелкнув по кнопке Exit в форме Form1. Отметим, что текущее приложение
реагирует на все эти стандартные способы завершения работы с программой
Windows. Это демонстрирует такой важный момент, что в большинстве случаев
приложения Visual Basic ведут себя так, как ожидает пользователь Windows,
не требуя при этом специального вмешательства программиста (или пользователя).
Далее попробуем изменить месторасположение
формы, видимое пользователю изначально. Для этого передвинем окно Form
Layout в правый нижний угол экрана.
Попробуем просто перетащить
форму внутри окна на новое место. Затем снова запустим приложение. Можно
увидеть, что окно формы теперь размещается там, куда его перетащили внутри
окна Form Layout.
Примечание: Размер, форма
и месторасположение окна являются примерами свойств (properties) данной
формы. Как можно наблюдать, они установлены путем непосредственных манипуляций
с ней. Кроме того, их значения можно установить при помощи окна Properties.
Использование
Application Wizard
Следующее, на чем Мы хотели
бы остановиться, — использование мощного VB Application Wizard ("Мастер
приложений"), входящего во все редакции Visual Basic, за исключением Control
Creation edition. Чтобы запустить его, необходимо выбрать в меню File|New
Project и далее, как показано на рис. 1-2, выбрать VB Application Wizard.
Если это будет проделаете, то после небольшой задержки на экране будет
видна картинка, похожая на рис. 1-5.
Для продолжения работы с Application
Wizard необходимо щелкнуть по кнопке Next. Следующий экран показан на рис.
1-6. Здесь программист может выбрать, как будет "выглядеть" новое приложение.
Отметим, что возможные варианты на экране отображены как словами, так и
в картинках.
Рисунок 1-4. Максимально увеличеное
окно Projtct1.
Чтобы посмотреть, как это все
работает, нужно щелкнуть по кнопке Explorer Style. Результат показан на
рис. 1-7. Рисунок демонстрирует, что в данном случае выбранный стиль представляет
собой древовидную структуру, напоминающую Windows Explorer (но не Internet
Explorer).
Рисунок 1-5. Начальный вид окна Application
Wizard.
Сейчас, тем не менее, будет
использоваться значение по умолчанию при выборе типа интерфейса - multiple
document interface (MDI). Убедившись, что выбор сделан, как показано на
рис. 1 -6, можно щелкнуть по кнопке Next. На экране появится окно для выбора
типа меню, как показано на рис. 1 -8.
Рисунок 1-6. Окно Interfaces Type
приложения Application Wizard.
Снова примем значения по умолчанию
и щелкнем по Next. После этого мы попадаем в окно, где выбираются параметры
файла ресурсов. Сейчас данный вопрос не будет обсуждаться (для любознательных
сообщим, что этот файл позволяет легко изменять наименования заголовков
и пунктов меню при изменении международных установок, например, названия
страны). Для перехода к рис. 1-9 снова нужно щелкнуть по кнопке Next.
Рисунок 1-7. Экран с выбранным типом
интерфейса Explorer.
Информация на новом экране
станет для читателя более понятной, когда он изучит взаимодействие Visual
Basic с Интернет. Сейчас же просто щелкнем по кнопке Next. В двух следующих
экранах можно добавить некоторые дополнительные формы к приложению, например,
окно заставки или панель "О программе..." (About). Впрочем, в данный момент
не будем разбираться с этим. Опять щелкнем по кнопке Next. Появится окно,
где можно подключить текущее приложение к базе данных. Просто выберем кнопку
Next.
Вот мы и добрались до последнего
экрана, как показано на рис. 1-10. Щелкнем по кнопке Finished и "мастер"
сгенерирует код для нового приложения. (Кроме этого, он спросит о необходимости
вывода итоговой формы. В ней будет описано кое-что из того, что предстоит
еще сделать программисту. Пример итогового отчета можно увидеть на рис.
1-11.)
Работа
с готовым проектом Visual Basic
Следующим шагом в освоении
Visual Basic станет запуск одного из примеров программ, поставляемых вмете
с ним. (Все версии Visual Basic, за исключением Control Creation edition,
поставляются с сотнями примеров программ.
Рисунок 1-8. Экран с меню построителя
приложения.
Когда читатели поближе познакомятся
с Visual Basic, они поймут, что данные примеры представляют собой хороший
источник информации и полезных идей.) Тот пример, о котором пойдет речь
сейчас, демонстрирует богатство выбора элементов управления, поставляемых
вместе с Visual Basic.
Ниже приведены основные шаги,
необходимые для загрузки существующего проекта. (Напомним, что проект представляет
собой набор файлов, компонуемых Visual Basic при создании приложения, т.е.
это комбинация визуальных компонентов и исходного кода.)
1. Выбрать из меню пункт File, нажав АLТ+F, либо
щелкнув мышью по пункту File в линейке меню.
2. Выбрать пункт Open Project (Открыть проект).
После этого откроется диалоговая
панель, как показано слева. (Если пользователь уже работал с Visual Basic,
то сперва на экране появится диалоговая панель с предложением сохранить
существующий проект.)
Необходимый проект находится
в подкаталоге внутри каталога с примерами программ (там хранятся все примеры,
поставляемые с Visual Basic). Поэтому сперва нужно перейти в каталог с
примерами программ, а затем в каталог с наименованием PGuide. Далее необходимо
перейти в каталог Controls и там дважды щелкнуть по файлу с наименованием
Controls. vbp.
Рисунок 1-9. Окно "Связь с Интернет"
в программе Application Wizard.
После небольшой паузы проект
с примером об элементах управления будет загружен в среду Visual Basic.
Для его запуска необходимо нажать F5. (Если появляется диалоговая панель
с вопросом о необходимости сохранить предыдущий проект, нужно ответить
"No".) Теперь экран будет выглядеть примерно так, как показано на рис.
1-12. После того как читатель закончит развлекаться с различными примерами,
демонстрирующими мощность Visual Basic при работе с элементами управления,
он должен щелкнуть по кнопке Exit либо нажать ALT+F4 для возврата в среду
разработки.
Последовательность
действий при разработке приложений Visual Basic (краткий обзор)
Автор хотел бы завершить данную
главу кратким обзором на тему о том, как разрабатываются приложения Visual
Basic. Некоторые шаги могут сперва показаться читателям непонятными, но
очень скоро все прояснится.
Рисунок 1-10. Последний экран
в Application Wizard.
Первым шагом при построении
приложения Visual Basic является планирование того, что пользователь видит
на экране, другими словами, разработка интерфейса. Какие меню понадобятся?
Окно какого размера требуется для приложения? Сколько всего будет окон?
Должен ли пользователь иметь возможность изменять размеры окон? Где разместить
кнопки для управления приложением? Будут ли в приложении размещены поля
для ввода текста? Какой тип элемента управления подойдет для решения данной
задачи? Подходят ли элементы управления из данной версии Visual Basic или
их необходимо приобретать или разрабатывать самим?
Количество элементов управления,
находящихся в распоряжении программиста, зависит от редакции Visual Basic,
а также от состояния его кошелька или количества времени, потраченного
на их разработку. В стандартную редакцию входит более 20 элементов управления,
в версии Professional и Enterprise - более 50. Более того, поскольку Visual
Basic подталкивает независимых разработчиков к созданию большого количества
элементов управления для особых задач, почти всегда можно найти готовый
элемент для решения любой проблемы. (Microsoft оценивает количество только
коммерческих элементов управления более чем в 2000 единиц, не считая буквально
бесчисленного множества бесплатных и условно-бесплатных.) В заключение
нельзя не отметить следующее: пользоваться новыми возможностями VB5 можно,
применяя либо готовые элементы управления, либо разрабатывая их с самого
начала (последнее, при всем уважении к читателю, не совсем подходящий способ).
Хотя мы еще многое не попробовали,
но автор хочет повторить еще раз, что в конечном счете Visual Basic отличается
от остальных средств программирования простотой разработки интерфейса пользователя
и его связи с кодом программы. В действительности можно просто нарисовать
этот интерфейс; такой подход очень напоминает графический редактор. После
того как разработка интерфейса завершена, кнопки управления, поля и другие
элементы, размещенные на пустой форме, автоматически будут распознавать
действия пользователя, такие, например, как движение мыши или щелчок ее
кнопки. Visual Basic включает в себя мощные средства разработки меню, что
делает создание обычных и всплывающих меню простым делом.
Только после того как подготовлен интерфейс программы,
начинается процесс, похожий на традиционное программирование. Это второй
шаг при построении приложений Visual Basic: создание программного кода
для активизации визуального интерфейса, подготовленного на первом этапе.
Смысл состоит в том, что объекты Visual Basic распознают события типа щелчков
мыши; то, как они их обрабатывают, зависит от программного кода, написанного
программистом.
Рисунок 1-11. Экран с итоговым отчетом
для Application Wizard.
Рисунок 1-12. Демонстрационная версия
PControl.
Пользователю почти всегда
придется писать собственный код для обработки событий. В этом и состоит
фундаментальное отличие программирования на Visual Basic от обычного программирования.
Обычно программы выполняются
от начала до конца. В более старых языках программирования выполнение приложений
начиналось с первой строчки программы и протекало через различные ее части
согласно алгоритму. Приложение на Visual Basic работает совершенно по-другому.
Ядром такой программы является набор независимых частей кода, активизирующихся
в ответ на события, происходящие вокруг. Это является принципиальным моментом.
Теперь вместо создания программы, отражающей мысли программиста, получается
приложение, управляемое пользователем.
Большинство всего кода программы,
отвечающего за обработку таких событий, как щелчки мыши, размещается в
процедурах обработки событий (event procedures). Они представляют собой
не что иное, как программный код, сообщающий Visual Basic, как реагировать
на текущее событие. По существу, весь исполняемый код в программах на Visual
Basic представляет собой либо процедуру обработки событий, либо используется
данной процедурой.
К сожалению, третий и четвертый
шаги для построения приложения Visual Basic заключаются в поисках ошибок
в программе и их исправлении (на жаргоне программистов это называется отладкой
(debugging)).
Ниже приведен перечень шагов,
необходимых для создания приложения Visual Basic:
1. Подготовить интерфейс окна, с которым будет
работать пользователь.
2. Определить, какие события будут обрабатывать
элементы управления внутри окна.
3. Написать процедуру обработки для этих событий
(и вспомогательные процедуры, если это необходимо).
Далее рассмотрим, что происходит
при запуске приложения:
1. Visual Basic отслеживает все окна и элементы
управления для каждого окна на предмет определения всех событий, относящихся
к ним (движения мыши, щелчки, комбинации клавиш и т.п.).
2. Когда Visual Basic определяет событие и не
находит для него встроенной процедуры обработки, он пытается найти процедуру,
написанную программистом для обработки данного события.
3. Если такая процедура существует, Visual Basic
выполняет ее и переходит опять к пункту 1.
4. Если процедуры не существует, Visual Basic
ожидает следующее событие и возвращается к пункту 1.
Данные шаги повторяются циклически
до тех пор, пока приложение не завершит работу. Обычно событие должно произойти
перед тем, как Visual Basic что-нибудь выполнит. Такая событийно-ориентированная
программа является более реагирующей, чем действующей, что делает ее более
дружественной по отношению к пользователю.
И последнее: поскольку язык
программирования Visual Basic основан на современной структурированной
версии BASIC, с его помощью легко создавать большие программы, используя
современные модульные и объектно-ориентированные технологии (все это не
похоже на старый, всеми осуждаемый BASIC). Кроме того, Visual Basic обеспечивает
превосходную обработку ошибок для всех наиболее значительных событий. Компилятор
языка работает быстро и даже позволяет компилировать программы в фоновом
режиме, необходим только код для запуска приложения. Это означает, что
любые изменения, необходимые при коррекции ошибок программирования и набора
текста программ, которые являются общими для всех начинающих программистов,
несложно быстро внести в программу. Добавим, что VB имеет расширенную электронную
систему помощи для быстрого поиска информации при разработке приложений.
Дополнительная
информация
Обычно пользователь выбирает кнопку, щелкая по
ней мышью. Однако иногда может
понадобиться большая гибкость. Один из методов
активизации кнопки является общим для всех
приложений Windows: переместить фокус на кнопку,
нажимая TAB, а затем нажать SPACEBAR. Оба
этих метода генерируют событие Click. Другими
словами, Visual Basic вызывает процедуру
обработки событий Click в любом из этих случаев.
Событие Click можно сгенерировать, используя код. (Пользователю известно,
что кнопка, получающая фокус, становится трехмерной. Это достигается рисованием
тонкого пунктирного прямоугольника вокруг текста на кнопке, и тонкого прямоугольника
вокруг самой кнопки.)
Иногда требуется организовать
взаимодействие с пользователем по клавише ESC. Обычно
данная клавиша отменяет операцию либо просто
выводит пользователя из запутанной ситуации.
При этом одна из командных кнопок на форме активизируется
клавишей ESC. В руководстве по
Visual Basic она носит название cancel button.
Обычно привязка командной
кнопки к клавише ESC осуществляется через окно Properties, однако
можно использовать и код. Если просмотреть список
свойств для командной кнопки, обнаружится
свойство Cancel. Если его значение равняется
True, то при нажатии ESC будет обработано событие
Click для cancel button, даже если на ней не
установлен фокус. Установка значения True в свойстве
Cancel для одной кнопки означает автоматическую
установку значения False для остальных кнопок
формы.
Другая возможность -
часто затруднительная для новичков - установка командной кнопки по
умолчанию. При этом событие Click для такой кнопки
генерируется, когда кто-нибудь нажимает
клавишу ENTER. Здесь могут возникнуть проблемы,
так как пользователи склонны нажимать
данную клавишу в самые неожиданные моменты. (Это
происходит, поскольку они считают, что,
если фокус установлен на каком-либо объекте,
необходимо нажимать не SPACEBAR, а именно
ENTER.) В любом случае, если необходимо использовать
данную возможность, следует установить
свойству Default значение True. Кроме того, на
форме может быть несколько кнопок по умолчанию.
Совет: Можно скомбинировать
кнопки default и cancel в default cancel button. Обычно это применяют,
когда необходимо принять какое-то окончательное решение.
|