99555

Коллекции объектов в Visual Basic

Доклад

Информатика, кибернетика и программирование

В Visual Basic объекты можно объединять в коллекции. Как правило, такие объекты относятся к одному типу. Однако можно объединять в коллекцию и объекты разных типов. Коллекция позволяет выполнять некоторые одинаковые действия со всеми входящими в нее объектами.

Русский

2016-09-23

125 KB

0 чел.

Коллекции объектов

К коллекции объектов можно применять оператор For Each.

В Visual Basic объекты можно объединять в коллекции. Как правило, такие объекты относятся к одному типу. Однако можно объединять в коллекцию и объекты разных типов. Коллекция позволяет выполнять некоторые одинаковые действия со всеми входящими в нее объектами.

В Visual Basic определены две встроенные коллекции объектов, к которым можно обращаться непосредственно:

Forms - включает все загруженные формы проекта;

Controls - включает управляющие элементы всех форм.

Каждая коллекция, кроме методов и свойств, входящих в нее объектов, имеет собственные методы и свойства. Кроме того, все коллекции имеют следующие общие свойства и методы:

• свойство Count - содержит число объектов в коллекции;

• метод Item - служит для выбора объекта в коллекции. Некоторые коллекции имеют следующие методы:

Add - с его помощью в коллекцию можно включить новый объект;

Remove - с его помощью объект можно исключить из состава коллекции.

В случае необходимости, кроме встроенных коллекций, можно определять свои коллекции. Для этого необходимо создать объект типа Collection. Объявление такого объекта имеет синтаксис

Public  |    [Private] |  Dim ИмяКоллекции As New Collection

 Некоторые объекты могут не поддерживать какое-то конкретное свойство или метод. VB позволяет обойти это препятствие двумя способами: с помощью ключевого слова TypeOf и функции TypeName.

Ключевое слово TypeOf можно использовать только в операторах IfThenElse … . Необходимо включить имя класса непосредственно в разрабатываемый код. Например, If TypeOf MyControl Is CheckBox Then ….

Функция TypeName отличается большей гибкостью. Ее можно использовать в любом месте кода и, так как она возвращает имя класса в строке, ее можно использовать в операторах сравнения со строковой переменной.

Рассмотрим пример создания коллекции управляющих элементов и их массовой обработки. В экранной форме проекта для этого примера будут размещены пять элементов управления CommandButton и один элемент Label. Все элементы CommandButton будут включены в коллекцию, а затем для каждого управляющего элемента этой коллекции в цикле For Each свойствам Caption будет установлено значение Мы из коллекции. Для разработки программы примера следует выполнить такие действия.

1. Создать новый проект с экранной формой, как показано на рис. 1, установить ее свойству Caption значение Цикл For Each.

Рис. 1

2. Поместить в форму управляющий элемент CommandButton, а затем создать массив из четырех этих элементов.

3. Поместить в экранную форму еще два элемента CommandButton, установив их свойствам Caption значения Выполнить и Выход соответственно.

4. Свойству Caption управляющего элемента Label установить значение Коллекция управляющих элементов.

5. В раздел "General" формы поместить код:

Option Explicit

Dim Коллекция As New Collection 'Объявление объекта типа Collection

Dim X As Control 'Объявление переменной типа Control

6. В процедуру обработки события Click для управляющего элемента с именем Command2 поместить код:

Private Sub Command2_Click()

For Each X In Controls   'Начало цикла

If TypeOf X Is CommandButton Then

 'Если управляющий элемент CommandButton,

'то добавить в коллекцию

Коллекция.Add X

End If

Next X 'Конец цикла For Each

For Each X In Коллекция

'Цикл, устанавливающий значения свойств

'Caption коллекции элементов

X.Caption = «Мы из коллекции»

Next X

End Sub

7. В процедуру обработки события Click для управляющего элемента с именем Command3 поместить код:

Private Sub Command3_Click()

End

       End Sub

8. Запустить программу на выполнение. После щелчка мышью по кнопке <Выполнить> изображение на экране примет вид, как показано на рис. 2.

Рис. 2


 

А также другие работы, которые могут Вас заинтересовать

66605. Системы управления ИТ-инфраструктурой 51.54 KB
  Существует несколько методов оценки глубины полупространственная глубина симплексная глубина и глубина зоноида. Определение глубины Глубина является мерой близости к центру с помощью которой многомерная информация может быть упорядочена.
66606. Создания информационной системы компании «ИП Шедиков Е.Г.» 330.5 KB
  Качество обслуживания клиентов. Ассортимент продукции изменяется каждый день и даже самый опытный продавец не в состоянии полностью отследить все эти изменения. На торговых точках продавцу просто необходимо знать информацию о реализуемой продукции и быстро предоставлять ее клиенту.