
5.2. Структура проекта
Проект обычно включает одну или несколько форм, а также может включать модули. С формой Вы уже имели дело при выполнении предыдущих заданий. Форма при выполнении проекта отображается на экране монитора в виде окна. Она может содержать объекты (надписи, кнопки и т.д.). Модуль отличается от формы тем, что он никак не отображается на экране монитора при выполнении проекта и не может содержать объекты.
Каждая форма и каждый модуль проекта имеют главную секцию (General), в которой может быть записан программный код.
В главной секции могут быть объявлены константы и переменные.
Наряду с главной секцией форма и модуль могут включать секции, каждая из которых является объявлением процедуры или функции.
5.3. Объявление переменных и констант
Если переменная применяется в проекте, она должна быть объявлена. Существуют следующие уровни объявления переменных и констант:
Уровень процедуры (функции). Имя, объявленное в процедуре, действует только внутри этой процедуры и не действует вне этой процедуры.
Уровень формы. Имя, объявленное в главной секции формы, действует во всех процедурах этой формы, но не действует в других формах и модулях.
Уровень проекта. Имя, объявленное в главной секции модуля с предваряющим словом Public (Общий), действует во всех формах и модулях проекта.
Надо иметь в виду, если при объявлении переменной тип явно не указан, то будет назначен тип Variant. Такой способ объявления называется объявлением по умолчанию.
При объявлении константы необходимо задать ее имя, тип, область действия и значение.
Синтаксис объявления константы:
[Public/Private] Const ИмяКонстанты [As Тип] = Значение
В подобных определениях синтаксиса прямоугольные скобки [ ] означают, что конструкция, находящаяся внутри этих скобок, не обязательна. Символ (/) означает, что должно быть выбрано одно из слов, между которыми он поставлен. Сами же символы ([), (]), (/) в текст объявления не включаются.
Приведенное определение синтаксиса означает, что объявление константы начинается с обязательного слова Const (Константа). Перед Const может стоять одно из слов: Private (Локальный) или Public (Общий), задающих область действия константы. Затем следует имя константы. После имени может стоять слово As и наименование типа. Затем следует знак равенства и значение константы.
В определении подчеркнуто наименование той области действия, которая может быть задана по умолчанию.
В следующем примере в главной секции модуля описывается глобальная константа Age целого типа, и ей присваивается значение 54.
Public Const Age As Integer = 54
Допускается также описание нескольких констант в одной строке. В этом случае, чтобы задать тип данных, надо указать название типа для каждой константы.
В следующем примере описываются локальные константы Ag и Wg как Single.
Const Ag As Single = 3.14, Wg As Single = 2.78
Синтаксис объявления переменной:
Static/Public/Private/Dim ИмяПеременной [As Тип]
Зарезервированное слово Dim (Размерность) при объявлении переменных применяется чаще всего.
Статические переменные, описанные на уровне процедуры со словом Static вместо слова Dim, сохраняют свои значения даже после выхода из процедуры при повторном входе в эту процедуру.
Вот пример объявления переменной типа строки символов:
Dim strName As String
Если не указать тип переменной, ей будет присвоен тип Variant. При этом следует учитывать, что переменные типа Variant занимают больше места в памяти и обращение к ним происходит медленнее.
В одной строке можно объявить несколько переменных, но при этом следует для каждой указывать имя типа:
Dim a As Integer, b As Integer, c As Long
Dim e As Integer, f, g
В первой строке объявлены две переменные типа Integer и одна переменная типа Long. Во второй строке – одна переменная типа Integer, а две другие – типа Variant по умолчанию.
При объявлении переменная, не получает значения, ей только отводится память, а ее значение не определено.
Можно вообще не объявлять переменные. Однако такая практика является источником ошибок, и ее надо избегать. Чтобы Visual Basic расценивал любую необъявленную переменную формы или модуля как ошибочную, в главной секции формы или модуля первой должна следововать инструкция Option Explicit. Эта инструкция налагает требование явного описания всех переменных этой формы или модуля. Если модуль содержит инструкцию Option Explicit, при попытке использования неописанного или неверно введенного имени переменной возникает ошибка во время исполнения программы.
Можно так настроить среду Visual Basic, что инструкция Option Explicit будет автоматически помещаться системой Visual Basic в главной секции создаваемой формы или модуля. Для этого надо выполнить команды меню Tools (Инструменты), затем Options (Свойства), затем на вкладке Editor (Редактор) установить флажок в окошке Require Variable Declaration (требовать объявления переменных) и, наконец, щелкнуть на кнопке ОК. Но это следует сделать до создания формы или модуля.