Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
к экзамену.doc
Скачиваний:
5
Добавлен:
27.10.2018
Размер:
141.82 Кб
Скачать

3 Вопрос.

Создание собственных классов в Visaul Basic.

Отличительной особенностью Visual Basic версий выше третьей состоит в том, что они позволяют программисту создавать собственные классы.а) Создав класс, Вы получаете возможность использовать его как образец для объектов.

Dim NMath As New clsNMath 'Объявление объекта NMath класса clsNMath

б) Дальше нам нужно создать внутреннюю структуру класса, а именно внутренние переменные.

Public OperandA As Double 'Открытая переменная для хранения

'первого операнда

Public OperandB As Double 'Открытая переменная для хранения

'второго операнда

Const NM_PI = 3.14159265359

в) Для создания следующей открытой переменной нам нужно создать перечисляемый тип

Public Enum ActionType

Add 'Сложить

Substract 'Вычесть

Multiple 'Умножить

Divide 'Разделить

End Enum

Public Action As ActionType 'Открытая переменная

'для хранения типа действия

г) В общем основная часть класса уже создана, осталось только задать свойство, которое будет выдавать ответ.

4 Вопрос.

Создание классов с помощью VB Class Builder

Для создания сложных классов или доработки уже имеющихся в среде Visual Basic 6 предусмотрено специальное инструментальное средство — построитель классов Class Builder.

а)Добавить модуль класса меню Project (Проект).

б)При запуске построителя классов открывается окно Class Builder (рис. 15.8) для проектирования классов, в котором выполняется вся работа по созданию или дополнению класса. Это окно состоит из четырех вкладок:

  • Properties (Свойства) — вкладка для работы со свойствами;

  • Methods (Методы) — вкладка для работы с методами;

  • Events (События) — вкладка для работы с событиями;

All (Все) — вкладка, на которой представлены все члены класса

Add New Class

в) Далее рассказывается о том какие действия можно выполнять с классом Class Builder

- Добавляет новый класс. Дублирует команду Class (Класс), появляющуюся при выборе в меню File (Файл) построителя команды New (Новое)

Add New Property to Current Class - Добавляет новое свойство в класс. Дублирует команду Property (Свойство), появляющуюся при выборе в меню File (Файл) построителя команды New (Новое)

Add New Method to Current Class - Добавляет новый метод в класс. Дублирует команду Method (Метод), появляющуюся при выборе в меню File (Файл) построителя команды New (Новое)

Add New Event to Current Class - Добавляет новое событие в класс. Дублирует команду Event (Событие), появляющуюся при выборе в меню File (Файл) построителя команды New (Новое)

Show Properties for the Current Object - Показывает свойства текущего члена класса. Соответствует команде Properties (Свойства) меню Edit (Правка)

Cut - Вырезает выделенное в буфер

Copy - Копирует выделенное из буфера

Paste - Вставляет информацию из буфера

Кроме этих кнопок, дублирующих команды меню, в меню построителя классов Class Builder есть одна важная команда, которая не продублирована кнопкой. Это команда Update Project (Внести изменения в проект).

г) После завершения работы с классом его необходимо сохранить в файле с расширением els.

Пример: Private mvarAddSalary As Currency 'local copy

Public Property Let AddSalary(ByVal vData As Currency)

'used when assigning a value to the property, on the left side of an assignment.

'Syntax: X.AddSalary = 5

mvarAddSalary = vData

End Property

Public Property Get AddSalary () As Currency

'used when retrieving value of a property, on the right side of an assignment.

'Syntax: Debug.Print X.AddSalary

AddSalary = mvarAddSalary

End Property

5 вопрос. При выполнении программы принципиальное значение имеет область действия выбранных переменных. Попытка использования переменных, которые не действуют в данном месте программы, приводит к ошибке программирования или же к неоднозначности результатов. В Visual Basic можно применять глобальные и локальные переменные. Глобальные переменные доступны из любой части программы. Для локальных переменных можно задавать область действия в рамках всего модуля или отдельной процедуры.

Присваивая имена переменным с учетом области ее действия, придерживайтесь следующего формата:

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

Префикс

Пример

Глобальная

g

gdtmFinish

Локальная внутри модуля

m

msngLength

Локальная внутри процедуры

нет префикса

strLastname

Для создания переменной, которую вы хотите определить в качестве глобальной, в раздел General Declarations главного модуля приложения поместите оператор public.

Модули нужны для объявления глобальных переменных, т.е. переменных которые могут использоваться во всем проекте (во всех формах...), и для объявления API функций.

Private нужен для объявления переменных и им подомных внутри модуля. А Public нужен для объявления переменных во всем проекте, т.е. глобальных

Public Peremen as Long Этой строчкой ты объявишь глобальную переменную: Perem, т.е. эту переменную могут использовать все формы, модули.... Поэксперементируй с переменными. Так же в модуле можно создовать глобальные(Public), и обычные(которые будут работать только в модуле!(Private)) функции, т.е. ты сможешь разгрузить форму создав для функций отдельный модуль.

Переменные необходимы для хранения различного рода данных. В VB переменные обладают таким свойством как область видимости. Что это, и зачем это нужно, спросите вы, а подумайте сколько вам нужно придумать имён переменных для использования в программе, например, для работы с базой данных. Вам просто нехватит понятных имён. И вообще многие переменные нужны только в определённой части программы, а некоторые во всей.

Для того чтобы этого избежать в VB перед именем переменной можно написать одно из этих ключевых слов:Public/Global - для глобальных переменных ( видимых во всей программе).

И Private/Local - для локальных переменых видимых только в процедуре, функции или модуле, в котором они созданы.