Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование на Visual Basic и Visual Basic for Applications.doc
Скачиваний:
175
Добавлен:
01.05.2014
Размер:
579.07 Кб
Скачать

2. Разработка интерфейса

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

2.1.1. Общие сведения

Категории элементов управления (ЭУ):

1. Встроенные ЭУ (командная кнопка, кадр и др.) - содержатся внутри .exe файла Visual Basic, располагаются всегда в палитре объектов, в от­личие от внедряемых объектов и ЭУ ActiveX, которые могут быть удалены или добавлены к палитре объектов.

2. Стандартные ЭУ ActiveX, которые хранятся как отдельные файлы с расширением .ocx (раньше назывались пользовательскими или ЭУ OLE) - это связанные с данными сетка, комбинированный блок,списки и т.д. (в преды­дущих версиях с расширением .vbx).

3. Внедряемые объекты (Microsoft Excel Worksheet, Microsoft Project Calendar и др.). Некоторые поддерживают OLE-автоматику, позво­ляющую программно управлять объектами другого приложения изнутри прило­жения VB. Доступные внедряемые объекты можно выбрать из вкладки Insertable Objects окна диалога Components.

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

Каждый элемент управления имеет некоторое свойство, которое можно использовать для сохранения или получения значения объекта, не используя имя свойства, а обращаясь к объекту только по его имени. Это свойство называется значением элемента управления и обычно является наиболее важным или наиболее часто используемым. Пример:

Text1 = "Этот текст будет присвоен свойству Text объекта Text1"

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

Внешний вид и функционирование ЭУ определяются его свойствами. Свойства ЭУ могут устанавливаться на стадии проектирования, а так же их можно изменять во время выполнения приложения.

Если приложение имеет несколько форм, то в каждая из них может содержать ЭУ с одинаковым именем. Поэтому синтаксис обращения к свойствам имеет следующий вид:

[Форма.] Имя_ЭУ.Свойство = Значение

Если ЭУ содержится только в одной форме, то имя формы указывать не обязательно. Каждое свойство является внутренней переменной ЭУ, значение которой можно не только устанавливать, но и считывать (присваивать некоторой другой переменной). Некоторые свойства доступны как для считывания, так и для изменения. Существуют так же свойства, доступные только для считывания.

Основные свойства ЭУ:

1. Позиция ЭУ определяется четырьмя свойствами – Left, Top, Height, Width. Эти значения по умолчанию используют в качестве единицы измерения твип (twip). Твип – это экранно-независимая единица измерения, равная 1/20 точки принтера и гарантирующая независимость отображения элементов приложения от разрешения дисплея. Свойства Left и Top задают координаты левого верхнего угла ЭУ, свойства Height и Width – его высоту и ширину. Отсчет в системе координат ведется сверху вниз (Y) и слева направо (X).

2. Для управления цветовым оформлением ЭУ используются свойства – BackColor (цвет фона), FillColor (цвет заполнения), ForeColor (цвет текста).

3. Вид шрифта в ЭУ устанавливается значением Font: Font.Name (имя шрифта), Font.Size (размер), Font.Bold (полужирный), Font.Italic (курсив), Font.Underline (подчеркивание), Font.StrikeThrough (перечеркивание), Font.Weight (толщина).

4. Для указания доступности и видимости ЭУ используются свойства Enabled и Visible. Если свойству Enabled дать значение False, то ЭУ будет недоступен и обычно подсвечивается серым цветом. Если свойству Visible дать значение False, то ЭУ будет не виден.

5. Свойство Name является идентификатором ЭУ.

6. Внешний вид ЭУ определяется свойством Appearance. Свойство ToolTipTex используется для вывода подсказки при установке курсора мыши на ЭУ.

7. Свойство Parent указывает на родительский объект, что обеспечивает доступ к его методам и свойствам.

8. Свойство Container, в отличие от предыдущего свойства, доступного только для чтения, позволяет не только считывать, но и изменять контейнер ЭУ.

Контейнерами для других ЭУ могут служить следующие ЭУ – Form, Frame, Picture, Toolbar.

9. В отличие от других свойств, свойство Tag не используется для управления элементом управления – оно предназначено для хранения любых дополнительных данных.

10. Кроме стандартных вышеперечисленных свойств, формы имеют и присущие только им свойства:

– BorderStyle изменяет вид рамки, принимает одно из следующих значений: 0 (окно без рамки, размер и положение изменяться не могут, нет заголовка), 1 (фиксированная рамка, размер меняться не может), 2 (по умолчанию, возможно изменение размера), 3 (окаймление толстой рамкой), 4 (сходно с 3), 5 (сходно с 2);

– ControlBox определяет, отображается ли системное меню, с помощью которого можно выйти из программы (Alt+F4);

– MaxButton увеличивает окно до размера экрана; если у формы это свойство имеет значение False, то соответствующая кнопка будет отсутствовать, а из системного меню удаляется команда РАЗВЕРНУТЬ;

– MinButton при значении False затемняет кнопку и удаляет из системного меню команду СВЕРНУТЬ.

Основные события, обрабатываемые большинством ЭУ:

А. События мыши – Click (возникает при щечке на ЭУ), DblClick (двойной щелчок на ЭУ), MouseDown (нажатие копки мыши), MouseUp (отпускание кнопки мыши), MouseMove (передвижение курсора мыши);

Б. События клавиатуры – KeyPreview (при значении True событие, связанное с клавиатурой сначала передается форме, а затем – текущему ЭУ), KeyPress (возвращает код ASCII нажатой клавиши, Alt не перехватывается), KeyDown и KeyUP (нажатие и отпускание клавиши);

В. Фокус – если элемент получает фокус, то он становится активным; если перейти от одного ЭУ к другому, то для предыдущего ЭУ вызывается событие LostFocus, а для нового – GotFocus.

Г. События формы – Load (происходит при загрузке формы в память, используется для инициализации объектов и переменных), Unload (происходит при удалении формы из памяти, параметр Cancel отменяет удаление формы с экрана), QueryUnload (помимо параметра Cancel в процедуру обработки события передается параметр UnloadMode, указывающий причину события), Resize (происходит при изменении размеров формы).

Имя процедуры обработки события формы всегда содержит слово Form. При этом не важно, как называется форма: Form_Событие([Аргументы…]).

Таблица 3.1

Элемент

Управления

Префикс

имени

элемента

Свойство-

-значение

Флажок (Checkbox)

chk

Value

Комбинированный блок (ComboBox)

cbo

Text

Командная кнопка (СommandButton)

cmd

Value

Элемент управления в процедурах,

когда конкретный тип не известен

ctr

Элемент управления (Data)

dat

Caption

Окно каталогов (DirListBox)

dir

Path

Окно дисководов (DriveListBox)

drv

Driver

Окно файлов (FileListBox)

fil

FileName

Форма обычная (Form)

frm

MDI-форма

mdifrm

Дочерняя MDI-форма (MDI-Child)

cfrm

Диалоговая форма

dfrm

Кадр (Frame)

fra

Caption

Вертикальная полоса прокрутки (VScrollBar)

vsb

Value

Горизонтальная полоса прокрутки HScrollBar)

hsb

Value

Образ (Image)

img

Picture

Метка (Label)

lbl

Caption

Линия (Line)

lin

Visible

Простой список (ListBox)

lst

Text

Меню (Menu)

mnu

OLE-объект

ole

Изображение (Picture)

pic

Picture

Фигура (Shape)

shp

Shape

Текстовое поле (TextBox)

txt

Text

Таймер (Timer)

tmr

Enabled

Панель инструментов (ToolBar)

tlb

Переключатель

Value

Связанный комбинированный блок

Text

Связанная сетка

Text

Связанный простой список

Text

Окно общего диалога

Action