Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
метод VBA 2012_1.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
801.79 Кб
Скачать

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

Окно инструментов VBA содержит следующие стандартные элементы управления

Сelect Objects (выбор объекта)

Label (метка)

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

Frame (рамка)

CommandButton (командная кнопка)

CheckBox (контрольный индикатор)

OptionButton (кнопка-переключатель)

ComboBox (комбинированный список)

ListBox (список)

ScrollBar (линейка прокрутки)

Image (изображение)

ToggleButton (переключатель)

SpinButton (счетчик)

Tabstrip (закладка)

MultiPage (закладка)

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

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

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

Многие свойства являются общими для всех или большинства элементов управления.

Каждый элемент управления имеет Name, которое используется для ссылок на этот элемент в процедуре. Visual Basic дает новому элементу имя по умолчанию, можно изменить эти имена на более осмысленные.

Большинство элементов управления имеют Caption, т.е. текст который находится на поверхности элемента.

Текстовые поля не имеют надписей, они содержатся в свойстве Text.

Размер и положение элемента определяются набором из четырех свойств: Width и Height для размеров и Left и Top для положения. При разработке приложения на форме присутствует фоновая сетка точек для выравнивания элементов управления.

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

Цвет фона элемента устанавливается свойством BackColor.

Для элементов управления, которые выводят на экран текст или графику, цвет определяется свойством ForeColor.

В каждый момент времени только один элемент управления на окне может быть активным. Это обычно обозначается тонкой границей вокруг элемента управления, подсвечиванием или появлением курсора в текстовых окнах. При нажатии клавиши [Tab] активность переходит от одного элемента к другому. Последовательность, в которой перемещается активность, определяется двумя свойствами: TabStop и TabIndex. Установка TabStop определяет, может ли элемент быть активным, а TabIndex задает последовательность, в которой элементы управления активизируются.

Свойство Visibie определяет, является ли элемент видимым, а свойство Enabled решает, может ли он быть использован.

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

Текст, находящийся в верхней части командной кнопки, хранится в свойстве Caption. Свойство Default идентифицирует кнопку, которая будет задействована, когда пользователь нажмет клавишу [Enter], обычно это кнопка ОК. Только одна кнопка на форме может иметь установку Да свойства Default. Аналогичным образом только одна кнопка может иметь установку Да свойства Cancel. Эта кнопка будет задействована, когда пользователь нажмет кнопку [Esc] (обычно, кнопка с надписью “Cancel“).

Элемент управления метка добавляет к форме текст.

Текст метки хранится в свойстве Caption.

Установка свойства AutoSize на Да позволяет расширить площадь метки.

Чтобы текст метки занимал более одной строки, нужно установить свойство WordWrap на Да.

Чтобы нарисовать окантовку вокруг площади, занимаемой текстом, нужно изменить свойство BorderStyle на 1.

Элемент управления текстовое поле предоставляет пользователю простейший способ ввода данных.

Свойство Text содержит введенный пользователем текст после завершения ввода.

Для текстового поля нет свойства Caption, поэтому любое описание (обычно слева) должно быть сделано в виде отдельной метки.

Установка свойства MultiLine на Да создает текстовое поле с двумя или более строками текста.

Если установить свойство Locked на Да, то пользователь не сможет изменить текст.

Свойство MaxLength устанавливает предельное количество символов, которые могут быть введены в окно. Если установка MaxLength равна 0 (по умолчанию), то количество вводимого текста ограничено только памятью компьютера.

Для текстов большого размера, когда MultiLine установлено Да, можно добавить линейки прокрутки. Свойство ScrollBar принимает следуюшие значения:

0 – линеек прокрутки нет,

1 – горизонтальная линейка прокрутки,

2 – вертикальная линейка прокрутки,

3 – обе линейки прокрутки.

Свойство PasswordChar полезно в тех случаях, когда пользователя просят ввести пароль. Установкой этого свойства может быть любой одиночный символ (обычно символ *), этот символ выводится на экран всегда. независимо от того, какой символ вводит пользователь, а реальное содержимое ввода хранится в свойстве Text.

Кнопки-переключатели и контрольные индикаторы обеспечивают пользователю два различных способа делать выбор.

Кнопки-переключатели обычно появляются группами и являются взаимосвязанными. Элемент состоит из кружка и текста, находящегося рядом.

Текст хранится в свойстве Caption. Свойство Alignment может быть установлено 0 или 1 в зависимости от того справа или слева от кружка должен находиться текст.

Свойство Value может иметь установки Да или Нет, в зависимости от того, может быть выбрана кнопка или нет. В каждый момент времени может быть выбрана только одна кнопка.

Контрольные индикаторы работают аналогично, но основное отличие в том, что они работают независимо друг от друга. Пользователь может выбрать несколько контрольных индикаторов одновременно.

Для свойства Value возможны установки: 0 (не выбрано), 1 (выбрано) и 2 (не доступно).

Рамка позволяет объединить элементы управления в группы.

Свойство рамки Caption. хранит текст, размещенный в левом верхнем углу рамки.

Линейки прокрутки часто находятся на текстовых окнах, но можно их также добавить в другие места.

Свойства Min и Max дают предельные значения, которые могут быть использованы линейкой прокрутки.

Свойство Value представляет текущее положение маркера на линейке прокрутки, как часть расстояния от одного конца линейки прокрутки до другого.

Свойство SmallChange определяет величину, на которую изменится Value при щелчке на конце линейки прокрутки.

Свойство LargeChange oпределяет величину изменения при щелчке по самой линейке прокрутки.

Элемент управления изображение позволяет добавлять в форму растровые изображения.

Списков и комбинированные списки позволяют выбирать записи из списков.

Закладки служат для группировки элементов.

В Visual Basic код состоит из одного или нескольких операторов. В каждой строке помещается один оператор, но можно объединить несколько операторов, разделив их двоеточием. Оператор можно разделить на несколько физических строк. Разделителем строк служит символ подчеркивания ( _ ), следующий за пробелом.

Комментарии предназначены для пояснения отдельных фрагментов программы и игнорируются при выполнении программы. Для выделения начала комментария можно использовать оператор Rem, который должен находиться в отдельной строке, или верхнюю запятую ( ‘ ), которая ставится в любом месте строки, при этом текст комментария располагается справа.

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

Для имен переменной должны выполняться правила:

  • имя переменной должно начинаться с буквы,

  • максимальная длина имени – 255 символов,

  • имена могут содержать буквы, цифры и символ подчеркивания ( _ ).

все другие символы не допускаются.

  • имя не может быть зарезервированным в Visual Basic словом.

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

Числовые переменные хранят числа (целые числа, дробные числа, проценты, денежные суммы) и установки для численных свойств.

Строковые переменные хранят элементы текста и метки, а также установки для текстовых свойств.

Объявление – это оператор, указывающий имя переменной и ее тип.

Место, в котором объявляется переменная, определяет ее область действия.

  • Локальные переменные объявляются в начале процедуры и доступны

только внутри этой процедуры.

  • Переменные уровня формы объявляются в разделе General и

доступны для всех процедур в форме.

Переменная объявляется явно с помощью оператора Dim:

Dim < имя переменной > As < тип >

В одном операторе объявления можно объединять несколько объявлений

переменных разных типов.

Переменные могут быть одного из стандартных (встроенных) типов:

Тип

Содержание и диапазон изменения

Символ

INTEGER

Целые числа от -32768 до +32768

%

LONG

Целые числа от -2147483648 до 2147483648

&

SINGLE

Вещественные от 8.43*10^-37 до 3.37*10^38

!

DOUBLE

Вещественные от 4.19*10^-307 до 1.67*10^308

#

STRING

Символьные с максимальной длиной 32767 знаков

$

CURRENCY

Денежная переменная

@

BOOLEAN

Логическая переменная

Переменная может объявляться и автоматически, когда она появляется в коде (неявное объявление переменной). Для этого необходимо добавить знак типа к имени :

тип переменной знак

Integer %

Long &

Single !

Double #

Currency @

String $

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

Кроме стандартных типов можно использовать тип, определенный

пользователем (пользовательский тип):

Type <имя типа>

<имя1> As <тип>

<имя2> As <тип>

. . .

<имяN> As <тип>

End Type

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

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

Для объявления динамического массива необходимо:

  • объявить массив оператором Dim с пустой размерность в разделе General,

  • в процедуре оператором ReDim распределить фактическое количество элементов.

Некоторые переменные имеют фиксированные значения, которые не могут

быть изменены пользователем или процедурой. Они могут быть объявлены

как постоянные с помощью оператора Const:

Const < имя постоянной > <As Тип> = < выражение>

Постоянные (константы) могут быть числовыми, строковыми, логическими.

Числовые константы могут быть целыми (+352, 46, -9), вещественными

(с фиксированной точкой – 4.2, -6.5, с плавающей точкой – -1Е+3, 7.2Е-6).

Строка – это последовательность символов, заключенная в кавычки.

Логические константы: True (Истина), False ( Ложь).

В роли переменных могут выступать свойства различных объектов VB.

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

Переменным присваиваются значения с помощью выражений.

При этом тип переменной должен соответствовать типу выражения.

Различают выражения: арифметические, строковые, логические.

Арифметическое выражение – это комбинация чисел, арифметических

констант, числовых переменных, некоторых функций, которые связаны

арифметическими операциями:

^ - возведение в степень,

*- умножение,

/ - деление,

\ - целочисленное деление,

Mod – остаток от деления,

+ - сложение,

  • - вычитание.

Использование круглых скобок ( ) в выражениях изменяет порядок вычислений.

Строковые выражения – это комбинация текстов, текстовых констант,

текстовых переменных, определенных функций, которые связаны операцией + или &.

Логические выражения – это комбинация логических констант, логических переменных, отношений, некоторых функций, которые связаны операциями:

Not – отрицание,

And – логическое умножение,

Or -- логическое сложение,

Eqv – логическая эквивалентность,

Imp – логическая импликация.

Отношение - это два арифметических выражения, связанные знаком

сравнения:

= , <> , < , > , <= , >=.

Visual Basic содержит большое количество стандартных (встроенных) функций. Аргументы, задаваемые для функции заключаются в круглые скобки, которые следуют за именем функции.

Если аргументов несколько, то они разделяются запятыми.

Примеры стандартных функций:

Abs() - абсолютное значение,

Sqr() - корень квадратный,

Log() - натуральный логарифм,

Exp() - показательная функция,

Sin() - синус угла в радианах,

Cos() - косинус угла в радианах,

Tan() - тангенс угла в радианах,

Atn() – арктангенс,

Sgn() - знак числа,

Rnd() – порождает случайное число в интервале от 0 до 1,

Int(), Fix() – функции округления.

Str() – преобразует число в строку,

Val() – преобразует строку в число,

Left(строка, число) – выделение крайних слева символов строки,

Right(строка, число)выделение крайних справа символов строки,

Mid(строка, начало, длина) – выбор подстроки,

Len() – выдает длину строки,

Ltrim() – удаление пробелов перед строкой,

Rtrim() – удаление пробелов после строки,

Trim() – удаление пробелов с обоих сторон строки,

Ucase() – преобразование символов строки в заглавные,

Lcase() – преобразование символов строки в прописные,

Chr()преобразование ASCII-кода в соответствующий символ,

ASC() – выдает ASCII-код символа,

Date() – определение или изменение системной даты,

Time() – определение или изменение системного времени,

Eof() – возвращает логическое значение True, если достигнуто окончание

файла, и значение False – в противном случае,

Lof() – определение длины файла в байтах,

FreeFile() – определение номера файлу.

Для ввода данных можно использовать системную функцию InputBox,

для получения сообщения – системную функцию (или оператор) MsgBox.