Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Создание новой коллекции для выполнения групповых действий




Стандартные свойства и методы коллекций

End Sub

Next frmElement

For Each frmElement In Forms

Создание классов, содержащих коллекции

End Function

End Select

Income = MyObject.Sum + MyObject.Sum * Percent

Процедура Income оценивает промежуток времени с момента найма сотрудника (дата приема на работу хранится в свойстве DateN) для того, чтобы назначить служащему 20- или 60-процентную надбавку. Данное правило инкапсулировано внут­ри класса clsEmployee.

 

Коллекция это набор объектов, объединенных под одним именем, каждый из которых может иметь свой определенный тип. Visual Basic содержит встроенные коллекции объектов, например такие как Forms или Controls. Чтобы выполнить действия над всеми элементами коллекций, можно воспользоваться конструкцией For EachNext. Например, процедура Minimize минимизирует все загруженные формы приложения.

 

Sub Minimize()

‘Минимизация всех загруженных форм

Dim frmElement As Form

‘Цикл для каждой загруженной формы.

‘Минимизируем форму.

frmElement.WindowState=vbMinimized

Коллекции решают следующие проблемы:

• обеспечивают стандартизованный способ создания и работы с множеством экземпляров объекта;

• группируют сходные объекты для выполнения определенных задач, например, для измене­ния цветовых свойств или перетаскивания элемента управления на новое место;

• позволяют организовать большие системы объектов в виде иерархических структур;

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

 

У всех созданных пользователем коллекций существует некоторые общие свойства и методы.

 

Таблица 4.1

Свойство Назначение
Count Сообщает кол-во объектов в коллекции

 

Таблица 4.2

Метод Назначение
   
Add Добавляет объект в коллекцию
Remove Удаляет объект из коллекции
Item Возвращает один объект из коллекции

Коллекции Forms и Controls обслуживаются непосредственно самим Visual Basic, поэтому у них методов Add и Remove нет. В качестве параметров метода Add обычно используются имя объекта и его индекс для определения объекта в коллекции. Однако для коллекций различных типов методы Add и Remove могут определяться по-разному.

Можно создавать коллекции, содержащие формы, элементы управления и объекты. Разрабатывая новую коллекцию, следует использовать объектный тип данных Collection. Например:

Программа создает новую коллекцию под именем colTextBoxes и добавляет в нее все текстовые поля из формы.

' Создаем новую коллекцию для всех текстовых полей формы

Dim colTextBoxes As New Collection

Private Sub Form_Initialize()

' Переменная, используемая в цикле For… Each для временного

' хранения указателя на элемент управления




Поделиться с друзьями:


Дата добавления: 2014-12-10; Просмотров: 321; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.