Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Рамка (Frame)




Next

 

For Each Мой_объект In Моя_коллекция 'ДЛЯ КАЖДОГО объекта В коллекции

If TypeName (Мой_объект) = "CommandButton" Then 'если имя типа объекта - CommandButton, то

Мой_объект.Enabled = False 'деактивировать ее

End If

Next

 

Моя_коллекция. Remove 2 'Удаляем из коллекции второй элемент

Моя_коллекция. Remove "Кнопочка" 'Удаляем из коллекции кнопку

End Sub

Пояснения: У коллекций есть несколько методов, три из них (Add, Remove, Count) я сейчас поясню:

При помощи метода Add мы добавляем в коллекцию элементы. При этом обязательно указывается имя элемента. Также можно через запятую указать произвольную строку - ключ элемента, по которому можно к нему при желании обращаться, что мы и сделали в программе. Как видите, здесь для добавления каждого элемента мы использовали отдельный оператор, хотя есть ситуации, когда можно это делать в цикле.

Метод Count просто сообщает число элементов в коллекции:

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

Чтобы удалить отдельный элемент из коллекции (не с формы), используется метод Remove с указанием индекса или ключа элемента.

 

Для коллекций удобно применять специальную разновидность оператора цикла - For Each. Для этого необходимо придумать имя переменной величине, значение которой будет пробегать все элементы коллекции. Мы придумали имя Мой_объект. Когда цикл выполняется в первый раз, Мой_объект "равняется" 1-му элементу коллекции, во второй раз - 2-му и т.д., пока элементы не будут исчерпаны. В остальном синтаксис и порядок выполнения оператора For Each такой же, как и у привычного нам For. Здесь я не объвлял переменную Мой_объект, а мог бы и объявить - Dim Мой_объект As Control.

Здесь мы использовали функцию TypeName, чтобы выбрать из всех элементов коллекции только элементы данного типа. Пояснять ее я не буду, используйте дальше по аналогии. Вообще, вы чувствуете, что с этими коллекциями мы ступили на зыбкую для нас почву работы с объектами? Зыбкая она потому, что мы пока про работу с объектами почти ничего не знаем. Ну что ж, получше узнаем мы ее в Глава 20, а пока вам хватит того, что вы уже узнали.

 

Кстати, оператор For Each можно использовать и при работе с массивами.

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

Поместите на форму элемент управления Frame, придав ему довольно большие размеры. Затем возьмите из Toolbox и поместите внутрь этой рамки несколько других элементов управления, в том числе еще один Frame. А теперь передвиньте рамку по форме. Вы видите, что объекты внутри рамки передвинулись вместе с ней. Посмотрите на значения свойств Top и Left любого объекта внутри рамки. Теперь это координаты не относительно формы, а относительно рамки.

Если вы захотите мышкой переместить в рамку уже размещенный на форме объект, у вас ничего не получится. Оказавшись внутри границ рамки, он не стал "своим". Убедитесь в этом, сдвинув рамку в сторону. Все уехали, объект остался на месте. Чтобы добиться желаемого, вырежьте (Cut) объект со старого места и наклейте (Paste) в рамку. Аналогичная ситуация, когда вы попытаетесь обнять новой или старой рамкой уже существующие объекты.

 

Рамка является удобным средством объединения элементов управления по смыслу. Пример:

 

 

В программе вы можете изменять значения свойств рамки Top, Left. Объекты, объединенные в рамке, будут при этом перемещаться вместе с ней. Вы можете изменять значения свойств рамки Visible, Enabled. При этом точно так же будут меняться значения этих свойств всех объектов, объединенных в рамке. Это полезно тогда, когда у вас на форме слишком много объектов и все они свободно не умещаются на ней. Вас может выручить то, что не все они нужны одновременно. Разделите их между наложенными друг на друга рамками и в каждый момент времени делайте видимой только одну из них.

 

Поэкспериментируйте с цветами, границей, шрифтом рамки.

 

Способностями, аналогичными рамке, обладает и объект PictureBox. Проверьте - в нем точно так же можно размещать элементы управления. Мы знаем и еще один такой объект. Это, конечно же, сама форма. Все подобные объекты называются контейнерами.

Глава 15. Элементы управления

Вот некоторые элементы управления, с которыми мы уже познакомились:

· Кнопка, метка, текстовое поле - в Глава 1 и Глава 2.

· Microsoft Multimedia Control - в 2.8

· Animation - в 2.12

· Image, Picture - в 9.3

· Line, Shape - в 9.4

· Таймер - в 11.2

· Рамка (Frame) - в 14.4

 

А эти элементы управления мы пройдем позже, в следующих главах:

· Common Dialog - в 18.2

· Панель инструментов и ImageList - в 18.3

· Web-броузер - в 21.5

· Data и DBGrid - в 22.3

 

В этой главе я познакомлю вас с остальными нужными, с моей точки зрения, элементами управления. Я буду описывать только главное действие и главные свойства этих элементов, но этого в подавляющем большинстве случаев вполне достаточно. С другими любопытными и удобными их свойствами вы можете познакомиться в более толстых книжках.

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

Многих из описываемых элементов управления нет на Toolbox. Чтобы их добыть, поставьте флажки в Project ® Components ® Microsoft Windows Common Controls 6.0 и Microsoft Windows Common Controls 6.0-2.




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


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


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



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




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