ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.04.2021

Просмотров: 1488

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

41

Простой

массив

имеет

одно

измерение

Например

массив

содержа

-

щий

список

студентов

в

группе

Примером

трехмерного

массива

может

служить

сведения

об

объеме

продаж

по

региону

за

месяц

за

год

Можно

иметь

в

массиве

до

 60 

измерений

Однако

в

реальной

жизни

очень

редко

встречается

использование

размерности

выше

 5 

или

 6. 

Размерность

массива

 – 

это

количество

индексов

которые

опреде

-

ляют

местоположение

элемента

в

массиве

В

 VB 

существуют

массивы

фиксированного

размера

и

динамические

массивы

Массив

фиксированного

размера

имеет

неизменный

размер

,  

за

-

данный

при

его

объявлении

Объявление

массива

фиксированного

размера

.

Объявление

мас

-

сива

фиксированного

размера

зависит

от

области

его

видимости

и

осуще

-

ствляется

следующим

образом

глобальный

массив

объявляется

с

помощью

оператора

Public 

в

секции

Declaration 

модуля

массив

уровня

модуля

 – 

с

помощью

оператора

Private 

или

Dim 

в

секции

Declaration 

модуля

локальный

массив

 – 

с

помощью

оператора

Private 

или

Dim 

процедуры

Наиболее

часто

для

объявления

массива

используется

оператор

 Dim. 

Обычно

индексы

массива

начинаются

с

нуля

Границы

массива

все

-

гда

должны

быть

целыми

числами

.  

Синтаксис

оператора

 Dim: 

Dim 

имяМассива

 (

размерМассива

) [As 

типМассива

Объявление

массива

зависит

от

области

его

видимости

Объявление

динамического

массива

.

Если

размер

массива

заранее

неизвестен

, Visual Basic 

позволяет

использовать

динамические

массивы

размер

которых

можно

изменять

в

процессе

выполнения

программы

При

-

менение

динамических

массивов

позволяет

эффективно

управлять

памя

-

тью

выделяя

память

под

большой

массив

лишь

на

то

время

когда

этот

массив

используется

а

затем

освобождая

ее

Создание

динамического

массива

осуществляется

следующим

обра

-

зом

1.

Массив

объявляется

с

помощью

ключевых

слов

используемых

при

создании

массива

фиксированного

размера

Список

размер

-

ностей

массива

остается

пустым

При

объявлении

глобального

массива

необходимо

выбрать

ключевое

слово

Public, 

при

объяв

-

лении

массива

на

уровне

модуля

 – Dim, 

при

объявлении

массива

в

процедуре

 - Dim 

или

 Static. 

Например

Dim intCountPar () As Integer 


background image

42

2.

С

помощью

выполняемого

оператора

Redim 

указывается

размер

-

ность

массива

и

его

размер

в

виде

числа

или

выражения

Синтак

-

сис

этого

оператора

аналогичен

синтаксису

оператора

объявления

массива

фиксированного

размера

Например

ReDim intCountPar (1 To 20) 

При

выполнении

оператора

ReDim 

данные

ранее

размещенные

в

массиве

теряются

Это

удобно

в

том

случае

если

данные

больше

не

нуж

-

ны

и

надо

переопределить

размер

массива

подготовив

его

для

размещения

новых

данных

.  

Если

нужно

изменить

размер

массива

не

потеряв

при

этом

данных

то

необходимо

воспользоваться

оператором

ReDim 

с

ключевым

словом

Preserve.  

Например

ReDim Preserve intCountPar (X+1) 

8.4. 

Оформление

программных

кодов

Чтобы

программа

была

читабельной

в

текст

кода

можно

включить

комментарии

а

операторы

большой

длины

разместить

на

нескольких

стро

-

ках

Рассмотрим

приемы

оформления

программных

кодов

Для

включения

в

текст

программы

комментария

необходимо

вве

-

сти

символ

  (

), 

который

может

быть

первым

символом

в

строке

или

находиться

в

любом

ее

месте

Этот

символ

означает

начало

комментария

и

все

символы

находящиеся

за

ним

, Visual Basic 

не

будет

транслировать

Если

оператор

имеет

большую

длину

его

можно

разбить

на

не

-

сколько

строк

используя

символы

продолжения

строки

пробел

за

которым

следует

символ

подчеркивания

 ( 

). 

Как

правило

при

написании

программ

операторы

размещают

на

отдельной

строке

Если

операторы

имеют

небольшую

длину

и

яв

-

ляются

однотипными

, Visual Basic 

позволяет

их

поместить

на

од

-

ной

строке

разделив

символом

двоеточие

 (

:

). 

8.5. 

Программные

модули

Программы

 VB 

хранятся

в

программных

модулях

трех

видов

ƒ

модуль

формы

ƒ

стандартный

модуль

ƒ

модуль

класса

Простое

приложение

состоящее

из

одной

формы

содержит

как

правило

только

модуль

формы

Если

в

процессе

создания

приложения

в

нескольких

модулях

формы

содержатся

повторяющиеся

функции

то

их

можно

выделить

в

отдельный

программный

код

который

будет

являться

общим

для

этих

модулей

Такой

программный

код

называется

стандарт

-

ным

модулем


background image

43

Для

разработки

модулей

классов

используются

команды

меню

Pro-

ject

Add Class Module

 (

Добавить

модуль

класса

); 

Add User Control

  (

Добавить

пользовательский

элемент

управления

). 

Модули

формы

могут

содержать

объявления

переменных

констант

типов

данных

внешних

процедур

используемых

на

уровне

модуля

про

-

цедур

обработки

событий

Они

хранятся

в

файлах

с

расширением

 (

.frm

).  

Стандартные

модули

могут

содержать

объявления

глобальных

и

ло

-

кальных

переменных

констант

типов

внешних

процедур

и

процедур

об

-

щего

характера

доступных

для

других

модулей

данного

приложения

Они

хранятся

в

файлах

с

расширением

 (

.bas

). 

Модули

классов

Рассматривая

 VB 

с

позиций

объектно

-

ориен

-

тированного

и

визуального

программирования

можно

говорить

о

создании

новых

объектов

с

разработанными

для

них

свойствами

и

методами

поме

-

щая

их

в

модули

классов

в

файлах

с

расширением

 (

.cls

).

8.6. 

Редактирование

исходных

кодов

Для

создания

программных

кодов

используется

редактор

кода

окно

которого

открывается

одной

команд

Выполнить

команду

View / Code

Из

контекстного

меню

выполнить

команду

View Code

Для

каждого

модуля

создается

отдельное

окно

кода

разделенное

внутри

на

секции

Выбор

секции

осуществляется

с

помощью

списка

Object

расположенного

слева

в

верхней

части

окна

.  

Для

стандартного

модуля

этот

список

содержит

общую

секцию

Gen-

eral

В

модуле

класса

в

этот

список

включены

общая

секция

и

секция

клас

-

сов

.  

В

модуле

формы

список

Object

содержит

общую

секцию

секцию

для

формы

 (

Form

) , 

а

также

секции

для

всех

размещённых

на

форме

объектов

.   

Для

каждой

выбранной

секции

можно

создать

процедуру

выбрав

ее

из

списка

Procedure

в

правом

верхнем

углу

окна

редактора

кода

содержа

-

щего

события

.  

Для

элемента

списка

General

из

списка

Object

есть

только

одно

зна

-

чение

Declarations

 (

Объявления

в

списке

Procedure

8.7. 

Процедуры

Процедуры

позволяют

разбивать

программные

модули

на

небольшие

логические

блоки

В

 Visual Basic 

существуют

следующие

виды

процедур

Sub 

Function 

Процедуры

 Sub

.

Процедура

Sub 

не

возвращает

значения

и

наиболее

часто

используется

для

обработки

связанного

с

ней

события

Ее

можно


background image

44

помещать

в

стандартные

модули

модули

классов

и

форм

Она

имеет

сле

-

дующий

синтаксис

[Private] [Public] [Static] Sub 

имяПроцедуры

 (

аргументы

        

Операторы

программного

кода

End Sub  

Процедуры

Sub 

подразделяются

на

общие

процедуры

и

процедуры

событий

Общие

процедуры

служат

для

размещения

повторяющихся

опе

-

раторов

используемых

процедурами

по

обработке

событий

тем

самым

разгружая

их

и

исключая

дублирование

часто

встречающихся

кодов

что

в

свою

очередь

облегчает

поддержку

приложения

Процедуры

обработки

событий

связаны

с

объектами

размещенны

-

ми

в

формах

 Visual Basic, 

или

с

самой

формой

и

выполняются

при

наступ

-

лении

события

с

которыми

они

связаны

Для

события

связанного

с

фор

-

мой

процедура

Sub 

имеет

следующий

синтаксис

Private Sub Form_

имяСобытия

 (

аргументы

   

Операторы

End Sub 

Для

события

связанного

с

элементом

управления

формы

процедура

обработки

событий

Sub 

имеет

следующий

синтаксис

Private Sub 

имяЭлементаУправления

_

имяСобытия

 (

аргументы

)

     

операторы

End Sub 

Для

облегчения

формирования

имен

создаваемых

процедур

необхо

-

димо

выполнить

следующие

действия

1.

В

окне

Properties

с

помощью

свойства

Name 

(

Имя

)

задать

имя

объекта

для

которого

создается

процедура

2.

В

окне

редактора

кода

  

из

списка

Object 

(

Объект

)

выбрать

объект

для

которого

создается

процедура

3.

Из

списка

Procedure 

(

Процедура

)

выбрать

событие

обработка

ко

-

торого

будет

выполняться

4.

Между

операторами

Sub 

и

 End Sub 

разместить

выполняемый

при

наступлении

этого

события

программный

код

Процедуры

 Function

.

Процедуры

Function

в

отличие

от

процедур

Sub

могут

возвращать

значение

в

вызывающую

процедуру

Синтаксис

процедуры

Function

выглядит

следующим

образом

[Private] [Public] [Static] Function 

имяПроцедуры

 (

аргументы

) [As type] 

        

операторы

  End Function 

Процедуры

Function, 

как

и

переменные

имеют

тип

задаваемый

с

помощью

ключевого

слова

As. 

П

о

умолчанию

процедуре

присваивается


background image

45

тип

Variant. 

Тип

процедуры

определяет

в

свою

очередь

тип

возвращаемого

ею

значения

Возвращаемое

процедурой

значение

присваивается

имени

процедуры

имяПроцедуры

и

может

быть

использовано

в

выражениях

про

-

граммного

кода

аналогично

стандартным

функциям

 Visual Basic. 

Вызов

процедур

Процедура

Sub 

может

изменять

значения

перемен

-

ных

заданных

для

нее

в

качестве

параметров

Вызов

процедуры

можно

осуществлять

двумя

способами

Call NameProc (

аргумент

1,

аргумент

2,. . . 

аргумент

N) 

NameProc 

аргумент

1, 

аргумент

2 . . . 

аргумент

При

вызове

процедуры

модуля

формы

из

другого

модуля

необходи

-

мо

указывать

ссылку

на

имя

модуля

формы

содержащего

процедуру

.  

Например

для

вызова

процедуры

с

именем

NameProc, 

находящегося

в

модуле

формы

 Form1, 

оператор

должен

выглядеть

так

Call Form1.NameProc (

аргумент

1, 

аргумент

2, . . . 

аргумент

N) 

Вызов

процедуры

Function 

аналогичен

вызову

встроенных

функций

Visual Basic

Кроме

этого

процедуру

Function 

можно

вызывать

так

же

как

процедуру

Sub. 

9. 

Управляющие

структуры

Все

языки

программирования

  (

высокого

уровня

и

ассемблерные

имеют

управляющие

структуры

позволяющие

изменять

порядок

выполне

-

ния

перечисленных

в

программном

коде

процедуры

или

функции

команд

Управляющие

структуры

 VB 

функционально

эквивалентны

подобным

структурам

в

языке

программирования

Бейсик

за

исключение

 For-Each-

Next. 

Ниже

перечислены

основные

управляющие

структуры

 VB. 

If-Then-Else

   

Выполняет

группу

операторов

если

соблюдено

не

-

которое

условие

Select Case

В

зависимости

от

значения

некоторой

переменной

или

результата

проверки

условия

выполняет

одну

из

нескольких

возможных

групп

операторов

GoTo 

Выполняет

изменение

порядка

выполнения

опера

-

торов

без

проверки

какого

-

либо

условия

For-Next

Выполняет

группу

операторов

заданное

число

раз

известное

до

начала

выполнения

цикла

While-Wend

Выполняет

группу

операторов

пока

соблюдается

некоторое

условие

Do-Loop

Выполняет

группу

операторов

пока

соблюдается

или

не

соблюдается

некоторое

условие