5.3.2. Элементы управления ActiveX

Помимо встроенных элементов управления, включенных непосредственно в языковой пакет VBA для MS Office 2002, в нем имеется возможность применения дополнительных компонентов, реализованных на основе механизма ActiveX. В Microsoft Office 2002 Developer Edition (ODE) входят 13 таких элементов управления ActiveX (они имеются также и в VB 6.0 Professional). Назовем их:

-    Slider, RichTextBox и CommonDialog предназначены для добавления к приложениям Office полезных элементов пользовательского интерфейса - соответственно ползунка, текстового поля, позволяющего вводить текст с разметкой, и стандартного набора диалоговых окон.

-    ProgressBar, StatusBar, ToolBar, TabStrip и UpDown предоставляют возможность использования элементов пользовательского интерфейса Windows XP: индикатора продвижения, строки состояния, панели инструментов, вкладки и пары стрелок.

-    Winsock и InternetTransfer обеспечивают обмен данными по каналам Internet.

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

Установка элемента управления ActiveX

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

1.         Если файл, содержащий нужный элемент управления, отсутствует в вашей папке System (Windows XP) или System32 (Windows NT), скопировать его туда с компакт-диска ODE.

2.         В меню Insert ("Вставка") редактора Visual Basic выбрать команду UserForm.

3.         В меню Tools ("Сервис") выберите команду References ("Ссылки") и в открывшемся одноименном окне нажать кнопку Browse ("Обзор").

4.         В диалоговом окне Add Reference ("Добавление ссылки") выделить файл с нужным элементом управления и нажать кнопку Open ("Открыть").

5.         Вернувшись в окно References ("Ссылки"), нажать кнопку OK.

Добавление элемента управления к пользовательской форме

Для использования в приложении Office элемент управления сначала помещают на форму, а затем настраивают и снабжают необходимым кодом. И если набор настраиваемых параметров и их значений в каждом случае свой, то процедура помещения на форму является общей для всех дополнительных элементов управления ActiveX, включенных в ODE. Поэтому приведем ее здесь, после чего перейдем к индивидуальному описанию элементов управления.

1.         В меню Insert ("Вставка") редактора Visual Basic выбрать команду UserForm.

2.         В меню Tools ("Сервис") выбрать команду Additional Controls ("Дополнительные элементы").

3.         В списке Available Controls ("Доступные элементы") отметить нужный элемент управления ActiveX, нажать кнопку OK, и этот элемент появится на панели элементов.

4.         Перетащить элемент управления с панели элементов на пользовательскую форму.

Основные элементы управления:

-           CommonDialog

-           ImageList

-           InternetTransfer

-           ListView

-           ProgressBar

-           RichTextBox

-           Slider

-           StatusBar

-           TabStrip

-           ToolBar

-           TreeView

-           UpDown

-           Winsock

5.3.3.  Описание элементов управления ActiveX

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

ImageList

Элемент управления ImageList служит для хранения набора изображений, используемого каким-либо другим элементом управления, - например, ListView, TreeView или ToolBar. Кроме того, ImageList можно применять с любыми элементами управления, имеющими свойство Picture, значением которого является объект Picture ("Рисунок"), такими как Image или CommandButton.

Использование ImageList экономит время, затрачиваемое на разработку. Вместо того чтобы писать программу, которая загружает изображения (с помощью функции LoadPicture), вы один раз заполняете форму для элемента ImageList, при желании присваиваете значения ключам, а затем пишете код, который задает изображения по названию (свойство Key) или по номеру (свойство Index).

Изображения должны представлять собой файлы формата .bmp или .ico и храниться в коллекции объектов ListImage. Для объектов ListImage определены свойства Key, Index и Count, а также методы Add, Remove и Clear, аналогичные соответствующим свойствам и методам обычных списков. ODE предоставляет возможность добавлять и удалять изображения, как во время разработки, так и во время выполнения приложения.

Некоторые варианты использования ImageList

-     Хранение изображений, символизирующих открытую и закрытую папку, а также документы различных типов. Можно динамически назначать такие изображения объекту Node элемента управления TreeView, чтобы отображать различные состояния каждого узла по мере того, как он разворачивается или сворачивается, и указывать, что представляет собой узел – документ или папку.

-     Хранение изображений, символизирующих типовые операции, такие как открытие, сохранение и печать файлов. Их можно назначить кнопкам (объектам Button) элемента управления ToolBar, используемого в программе.

-     Хранение изображений, используемых при перетаскивании, например значков DragIcons и MousePointer.

Пример использования ImageList

Добавить к пользовательской форме элемент управления Microsoft ImageList Control, version 5.0. После этого задать изображения.

1.         Поместить на пользовательскую форму элемент управления Image ("Рисунок").

2.         В окне свойств элемента Image для свойства Name установить значение imgTarget, для свойства PictureSizeMode – значение frmPictureSizeModeZoom, для свойства Caption -- значение ImageList. (Если этого окна нет на экране, нажмите <F4>.)

3.         В окне свойств элемента ImageList установить для свойства Name значение imlODE.

4.         В окне свойств ImageList выделить пункт (Custom) и нажать кнопку (...); в появившемся окне Properties ("Свойства") выбрать закладку Images ("Рисунки").

5.         Нажать кнопку Insert Picture ("Вставить рисунок").

6.         В поле открытия рисунка выделить нужный файл формата .bmp или .ico и нажать кнопку Open ("Открыть"). Источником изображений может служить, например, каталог Csample на компакт-диске ODE (\Msds\Odesmpl\Ode\Msdnoc2\Csample).

7.         Назначить изображению уникальный ключ, введя его в текстовом поле Key. Можно также назначить ему метку (не обязательно уникальную); она вводится в поле Tag.

8.         Нажать кнопку OK.

9.         Повторить процедуру вставки рисунка для всех изображений, которые нужно добавить к ImageList.

10.      В окне кода ввести следующий текст:

Option Explicit

Private Sub UserForm_Click()

Set imgTarget.Picture = imlODE.ListImages(1).Picture

End Sub

11.      Этот код связывает элемент управления Image с первым изображением, хранящимся в элементе управления ImageList.

12.      Запустить пример на выполнение

 

 

RichTextBox

Элемент управления RichTextBox, как и стандартный TextBox, предназначен для ввода и редактирования текстов, однако обладает значительно более широкими возможностями. Он позволяет управлять начертанием (полужирный шрифт, курсив) и цветом символов, применять эффекты (такие, как верхние и нижние индексы), форматировать абзац (задавать величину отступов, межстрочные интервалами и т. д.). В RichTextBox можно как задать формат вновь вводимого текста, так и изменить формат уже введенного, предварительно выделив его. Кроме того, обеспечивается работа с текстами большого размера (в TextBox длина текста ограничена 64 знаками).

Важнейшие возможности RichTextBox

-    Открытие и сохранение текстовых файлов в форматах RTF и ASCII. Соответствующие функции обеспечиваются методами LoadFile и SaveFile; кроме того, можно применять обычные операторы VB, предназначенные для ввода-вывода файлов, совместно со свойствами SelRTF и TextRTF.

-    Загрузка в элемент управления форматированных текстов путем перетаскивания (можно перетащить файл или выделенный фрагмент файла, открытого в другой программе).

-    Печать текстов и выделенных фрагментов (метод SelPrint).

-    Внедрение OLE-объектов с помощью метода Add коллекции OLEObject. Поддерживается перетаскивание в RichTextBox любых внедренных объектов (включая таблицы Excel и документы Word) как во время разработки, так и во время выполнения программы.

-    Легкая адаптация приложений, в которых используется стандартный элемент управления TextBox: в RichTextBox поддерживаются почти все его свойства, события и методы.

 

Пример использования RichTextBox

Добавьте к пользовательской форме элемент управления Microsoft RichText Control, version 5.0, после чего проделайте следующее.

1.   Добавить к той же форме элемент управления ComboBox ("Поле со списком").

2.   Для свойства Name элемента RichTextBox установить значение rtfODE, а для свойства Name элемента ComboBox -- cmbSetColor.

3.   Для свойства Caption пользовательской формы установить значение "Элемент управления RichTextBox".

4.   В окне кода ввести следующий текст:

Option Explicit

Private Sub cmbSetColor_Click()

With rtfODE

Select Case cmbSetColor.ListIndex

Case 0

.SelColor = vbBlack

Case 1

.SelColor = vbBlue

Case 2

.SelColor = vbRed

End Select

End With

End Sub

Private Sub UserForm_Initialize()

With cmbSetColor

.AddItem "Черный"

.AddItem "Синий"

.AddItem "Красный"

.ListIndex = 1

End With

End Sub

5.   Запустить пример на выполнение и ввести в RichTextBox какой-нибудь текст. Выделить фрагмент текста и посмотреть, как будет меняться его цвет в зависимости от выбранного в ComboBox значения.

TreeView

Элемент управления TreeView предназначен для представления в виде дерева иерархических структур данных - таких как, например, указатель к документу или множество файлов и папок на диске. Дерево состоит из узлов - объектов Node.

На экране узлы представляются текстом, изображением или комбинацией того и другого в зависимости от свойства Style объекта TreeView (всего предусмотрено восемь вариантов), а связи между узлами - линиями. Знак + указывает на наличие у узла свернутого поддерева, которое можно развернуть и сделать видимым, знак – на возможность свернуть развернутое поддерево.

Изображения для узлов дерева хранятся в элементе управления ImageList. В каждый момент TreeView связан только с одним набором изображений ImageList, поэтому все изображения в дереве (если стиль предусматривает вывод графики) имеют один и тот же размер.

Пользователь управляет объектом TreeView с помощью мыши или клавиатуры. Перечислим доступные клавиатурные команды.

-     <Стрелка вниз/вверх> - циклический переход к следующему/предыдущему видимому узлу (порядок узлов - слева направо и сверху вниз; за последним узлом следует первый).

-     <Стрелка вправо>: если текущий узел имеет дочерние и не развернут, он разворачивается, в противном случае происходит циклический переход к следующему видимому узлу.

-     <Стрелка влево>: если текущий узел имеет дочерние и развернут, он сворачивается, в противном случае происходит циклический переход к предыдущему видимому узлу.

-     <Буква или цифра>: переход к следующему узлу, название которого начинается с этой буквы (цифры). Не видимые в данный момент узлы разворачиваются.

Для управления деревом из программы используются свойства и методы объектов Node. Перемещение от одного узла к другому обеспечивают свойства Root (корневой узел), Parent (родительский узел), Child (дочерний узел), FirstSibling, Next, Previous и LastSibling (соответственно первый, следующий, предыдущий и последний в группе узлов, дочерних для одного и того же родительского). Предусмотрены методы для добавления и удаления узлов, свертывания и развертывания поддеревьев и т. д.

Пример использования TreeView

Для построения этого примера нам понадобится база данных Northwind, входящая в состав Office 97.

Добавив к пользовательской форме элемент управления Microsoft TreeView Control, version 5.0, выполните следующие шаги:

1.         Чтобы обеспечить работу с базой данных Northwind, установить связь с объектной библиотекой DAO 3.5: выбрать в меню Tools ("Сервис") команду References ("Ссылки") и в появившемся окне отметить Microsoft DAO 3.5 Object Library.

2.         Для свойства Name элемента TreeView установить значение tvwODE.

3.         Для свойства Caption пользовательской формы установить значение "Элемент управления TreeView".

4.         В окне кода ввести следующий текст:

Option Explicit

Public mdbNWind As Database

Public nodODE As Node

Public rsProducts As Recordset

Private Sub UserForm_Initialize()

' Открытие базы данных Northwind

Set mdbNWind = DBEngine.OpenDatabase _

("c:\program files\devstudio\vb\nwind.mdb")

' Добавление объекта Node

Set nodODE = tvwODE.Nodes.Add(, , "r", "Products")

' Открытие набора записей, содержащего одно поле

' из таблицы Products

Set rsProducts = mdbNWind.OpenRecordset _

("SELECT Products.ProductName FROM Products;")

Dim intCounter As Integer

' Добавление узлов для вывода названий продуктов

For intCounter = 1 To 4

' Добавление объекта Node

Set nodODE = tvwODE.Nodes.Add(1, tvwChild)

' Установка свойства Text

nodODE.Text = rsProducts!PRODUCTNAME

' Переход к следующей записи

rsProducts.MoveNext

Next intCounter

End Sub


Информация о работе «Электронный справочник по изучению Visual Basic»
Раздел: Информатика, программирование
Количество знаков с пробелами: 85003
Количество таблиц: 5
Количество изображений: 3

Похожие работы

Скачать
216919
8
10

... проекта. В этом случае редактор кода вызывается кнопкой View Code (Просмотр кода) панели инструментов окна Проводника. 2.3 Характеристика программы Данная программа написана на языке Visual Basic 6.0 и представляет собой 1 приложением, предназначенных выполнять все функции, которые требуются заданию. В конечный продукт входит 1 откомпилированное приложения, размер которого составляет ...

Скачать
23374
0
1

... пособия в школе Объект: электронные справочные пособия как мощный вспомогательный инструмент учителя Предмет: способ организации деятельности учащихся по созданию и применению электронных справочников Методы: ·          Теоретические (анализ, синтез); ·          Эмпирические (изучение и анализ литературы).  Этапы исследования: 1.        изучение теоретического материала по данному вопросу ...

Скачать
69118
0
15

... частью, с базой результатов тестирования обучающихся следует использовать нечто более удобное, чем язык разметки гипертекста. Наиболее удобным инструментом для написания самого программного обеспечения электронного учебника является визуальный язык программирования. В настоящее время существует достаточно большое количество визуальных языков таких, как C++, Visual Basic 6.0, Delphi 7.0, C#. C++ ...

Скачать
38110
0
25

... входит в электронное образовательное пространство учителя»?(Рис.1) Для того чтобы ответить на этот вопрос, необходимо определить: «что же такое цифровой образовательный ресурс?» Место ЦОР в электронном образовательном пространстве учителя   Определения ЦОРов В настоящее время существует множество определений понятия цифровых образовательных ресурсов, попробуем рассмотреть некоторые из них. ...

0 комментариев


Наверх