Toolbars - Панели инструментов

Открывать и настраивать панели инструментов Debug (Отладка), Edit (Правка), Form Editor (Редактор форм), Standard (Стандарт), а также Shortcut Menus (Сокращенные меню) можно с помощью команды View \ Toolbars ►.

Toolbox - Панель элементов управления

Панель содержит элементы управления, предназначенные для размещения на формах. Комплект содержащихся на панели элементов зависит от типа проекта. Открыть панель можно с помощью команды View \ Toolbox, настроить – с помощью контекстного меню (команды Components…, Add Tab…) и с помощью перетаскивания элементов между различными вкладками.

Project Explorer Window - Окно проекта

Приложение в Visual Basic реализуется в виде совокупности файлов, соответствующих различным компонентам проекта – формам, модулям, классам и другим, перечисленным в меню Project \ Addтип_компонента_проекта. Информация о файлах компонентов сохраняется в VBP-файле проекта. Если несколько проектов объединяются в группу, их имена сохраняются в файле с расширением .VBG. Одни и те же файлы компонентов могут быть использованы в различных проектах.

Открыть окно проекта можно с помощью команды View \ Project Explorer, добавить новый компонент в проект - с помощью команды Project \ Add тип_компонента_проекта.

Для сохранения компонента проекта необходимо выделить его в окне проекта и затем выполнить команду File \ Save имя_файла [As…], для исключения компонента из проекта - выполнить команду Project \ Remove имя_файла; при этом файл с диска удален не будет.

Для сохранения всего проекта совместно со всеми компонентами необходимо выполнить команду File \ Save Project [As…]. Команда File \ Remove Project закрывает проект, т.е. исключает проект из среды разработки; на диске все файлы проекта сохраняются.

Properties Window - Окно свойств

Открыть окно свойств выбранного компонента проекта или элемента управления можно с помощью команды View \ Properties Window. Список свойств состоит из двух столбцов – наименования и значения. Ввод значений осуществляется либо непосредственно с клавиатуры, либо выбором из выпадающего списка, либо при помощи вызова диалогового окна настройки свойства. Краткое описание выбранного свойства отображается в нижней части окна.

Object Browser - Каталог объектов

Открыть каталог доступных объектов можно с помощью команды View \ Object Browser. Каталог содержит информацию об объектах из всех библиотек типов, на которые ссылается проект (краткое описание классов, свойств, методов, событий, констант). Каталог имеет средства поиска членов классов по шаблонам имен с возможным использованием символов подстановки.

Form Designer - Конструктор форм

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

Code Editor Window - Редактор кода

Открыть редактор кода можно с помощью команды View \ Code, предварительно выделив наименование компонента проекта в окне проекта, а также с помощью двойного щелчка по наименованию невидимого элемента или по изображению видимого элемента.

Form Layout Window - Окно размещения форм

Открыть окно размещения форм можно с помощью команды View \ Form Layout Window. Окно размещения позволяет визуально позиционировать формы относительно экрана.

Программирование на Visual Basic

Правила кодирования

Размещение операторов

В каждой строке кода размещается, как правило, один оператор, причем целиком. Однако иногда для улучшения читабельности одна логическая строка кода может быть разбита на несколько физических строк (с помощью символа продолжения строки – символа подчеркивания) или несколько логических строк могут быть объединены в одну физическую (с помощью символа объединения строк – символа двоеточия), например:

1. Text1.Text = ”Эта строка ” & _

”могла бы быть ” & _

”очень длинной.”

2. Text1.BackColor = vbYellow: Text1.ForeColor = vbRed

Комбинирование разбиений и объединений строк допускается, но не рекомендуется.

Комментарии

Комментарий начинается со знака апострофа и занимает всю оставшуюся часть строки. Редактор кода не допустит одновременное продолжение строки и ее комментирование. Примеры:

1. ’Это комментарий, занимающий целую строку без переноса

2. Text1.ForeColor = vbRed ’Описание констант ищите в _

Object Browser по шаблону vb*

Устанавливать и снимать знак комментария в текущей строке можно мышью при помощи кнопок Comment Block и Uncomment Block панели инструментов Edit (панель открывается по команде View \ Toolbars \ Edit). Для работы с блоком строк его следует предварительно выделить.

Использование оператора комментария Rem считается устаревшим.

Кнопки Comment Block и Uncomment Block можно, например, установить на панели инструментов Standard (команда View \ Toolbars \Customize… и последующее перетаскивание кнопок с вкладки Commands категории Edit на панель).

Переменные

Типы данных

Таблица -1. Типы данных

№ п/п Тип Размер, байт Содержимое Область значений
Boolean Логическое значение True или False
Byte Целое неотрицательное 0 … 255
Integer Целое -32768 … +32767
Long Длинное целое -2147483648 … +2147483647
Single Число с плавающей точкой одинарной точности -3.402823E+38 … -1.401298E-45; +1.401298E-45 … +3.402823E+38
Double Число с плавающей точкой двойной точности -1.79769313486231E+308 … -4.94065645841247E-324; +4.94065645841247E-324 … +1.79769313486232E-308
Currency Число с фиксированной точкой (денежная величина) -922337203685477.5808 … +922337203685477.5807
Decimal (подтип Variant) Десятичное целое - 79228162514264337593543950335 … + 79228162514264337593543950335
Десятичное с фиксированной точкой -7.9228162514264337593543950335 … -0.0000000000000000000000000001; +0.0000000000000000000000000001 … +7.9228162514264337593543950335
Date Дата/время #01/01/0100 00:00:00# … #12/31/9999 23:59:59#
String10 bytes + string length Строка переменной длины Длина >= 01 to approximately 65,400
String * длинаLength of string Строка фиксированной длины длина = 1 … 65526 (= 2^16 - 10)
Object   Объект Любая ссылка на объект
Variant   Все Null, Error, ЧИСЛОВОЙ ДО Double, String, Object ИЛИ массив
имя_типа   Пользовательский тип (Type … End Type)  
  OLE объект типа имя_типа  
             

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

Byte/Integer/Long

Присваивание переменной целого типа вещественного значения сопровождается автоматическим округлением (по бухгалтерскому правилу – полуцелое число округляется до ближайшего четного).

Date

Литералы даты/времени могут задаваться, в частности, в американском формате (#[мм/дд/гг[гг]] [чч[:мм[:сс]] [AM | PM]]#). Если вместо знаков номера (#) использовать кавычки ("), то следует применять установленный в системе формат даты и времени.

String

Операции над строками:

& - сцепление (вместо знака амперсэнда можно использовать знак плюс, но это не рекомендуется).

Variant

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

Объявление переменных

Option Explicit

Для задания опции явного объявления переменных (что рекомендуется) необходимо включить оператор Option Explicit в секцию (General) (Declarations) кода.

Техника указания типа данных с использованием знака типа (%, &, !, #, @, $) считается устаревшей. Техника приписывания типа данных по первой букве идентификатора (операторы DefBool, DefByte, DefInt, …) вносит путаницу в текст программы.

Для автоматического включения в код оператора Option Explicit следует открыть диалоговое окно Options (команда меню Tools \ 0ptions...) и на вкладке Editor установить флажок Require Variable Declaration.

Dim

Для объявления переменных может использоваться оператор Dim со следующим синтаксисом:

Dim {имя_переменной As тип_данных},..

Имя (идентификатор) переменной должно начинаться с буквы и состоять из букв, цифр и символа подчеркивания (_). Длина имени – до 255 символов. Имя не может быть зарезервированным ключевым словом (например, Print).

Если конструкция As тип_данных будет опущена (что, однако, не рекомендуется), то по умолчанию будет применен тип Variant.

Область определения переменных

Локальные переменные

Локальные переменные определяются внутри процедуры и доступны только в ней.

Переменные контейнера

Переменные контейнера определяются в секции (General) (Declarations) и доступны только внутри соответствующего контейнера (формы, модуля, класса).

Глобальные переменные

Глобальные переменные определяются в секции (General) (Declarations) модуля. При этом вместо оператора Dim используется зарезервированное слово Public. Глобальные переменные доступны во всех модулях и процедурах проекта.

Время жизни переменных

Локальные переменные существуют в памяти с момента объявления до выхода из процедуры.

Статические переменные

Переменные, объявленные как статические, существуют в памяти и сохраняют свое значение в течение всего времени, пока существует в памяти форма или модуль. При объявлении статической переменной в операторе объявления вместо ключевого слова Dim используется слово Static:

Static {имя_переменной As тип_данных},..

Чтобы объявить статическими все локальные переменные процедуры, следует записать ключевое слово Static в заголовке процедуры:

Static {Sub | Function | Property} имя_процедуры([список_аргументов])

Массивы

В Visual Basic массивы могут быть объявлены как статические или динамические.

Статические массивы

В объявлении статического массива указываются границы индексов для каждого измерения:

{Dim | Public | Static} {имя_переменной({нижняя_гр To верхняя_гр},..) As тип_данных},..

Динамические массивы

Динамический массив объявляется без указания границ индексов и числа измерений:

{Dim | Public | Static} {имя_переменной() As тип_данных},..

В дальнейшем с помощью оператора ReDim устанавливается или изменяется его структура:

ReDim [Preserve] {имя_переменной({нижняя_гр To верхняя_гр},..)},..

Использование ключевого слова Preserve позволяет сохранить содержимое массива при изменении его структуры. Однако в этом случае можно изменять только верхнюю границу последнего измерения.

Присваивание массивов

Переменной, соответствующей динамическому массиву, может быть присвоено значение переменной, соответствующей статическому или динамическому массиву.

Пользовательский тип данных

Для определения пользовательского типа данных используется оператор Type, размещаемый в секции (General) (Declarations) модуля:

{Public | Private} Type имя_типа

имя_элемента [([нижняя_гр To верхняя_гр],..)] As тип_данных

End Type

Доступ к элементам переменной пользовательского типа осуществляется в следующей форме:

имя_переменной.имя_элемента[([идекс],..)]

Переменным пользовательского типа можно присваивать значения других переменных того же типа.

Константы

Для объявления констант используется оператор Const:

[Public | Private] Const имя_константы [As тип_данных] = выражение_константное

Константы могут быть определены как Public или Private в секции (General) (Declarations) модуля, или внутри процедуры (тогда они локальные).

Информацию о существующих константах, их значениях и применении можно получить из каталога объектов (Object Browser).

Процедуры

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

Процедуры в Visual Basic не могут быть вложенными.

Наши рекомендации