Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Для общей проверки переменных в программе необходимо оператор Option Explicit разместить в раздел General.

Поиск

Для того чтобы разместить данный оператор в разделе General необходимо:

Открыть окно Code

Выбрать объект General из списка объектов в окне Object

Выбрать Declaration из списка Procedure

Ввести Option Explicit.

Изменение значений по умолчанию для типов

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

DefInt A-Z

Основные формы операторов различных DefType

Функции Результат
DefInt DefLng DefSng DefDbl DefCur DefStr DefVar DefBool DefByte DefDate Диапазон букв для Integer Диапазон букв для Long Integer Диапазон букв для Single Precision Диапазон букв для Double Precision Диапазон букв для Currency Диапазон букв для String Диапазон букв для Variant Диапазон букв для Boolean Диапазон букв для Byte Диапазон букв для Date

Соглашения о типах можно всегда изменить, используя идентификатор, или оператор Dim для конкретной переменной. Обычно оператор DefType размещает в том же разделе (General), что и оператор Option Explicit.

Область видимости переменных

Программисты применяют термин - область видимости, когда хотят сказать о возможности использования переменной из одной части программы в другой её части. В Visual Basic переменные объявление внутри процедуры является изолированными друг от друга. В терминах программирования это означает, что данные переменные являются локальными.

Кроме того, Visual Basic позволяет объявить переменные, которые будут доступны для всех процедур формы. Такие переменные называют глобальными переменными уровня формы, как и оператор Option Explicit - объявление переменных уровня формы происходит в разделе Declaration

- Например: если открыто окно Code, можно выбрать Declaration для объекта General и ввести:

- Dim AZ As Currency

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

Динамические и статические переменные.

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

Однако это недостаточно в некоторых ситуациях.

Например: необходимо отследить сколько раз была нажата командная кнопка. Если счетчик будет все время сбрасываться, сосчитать будет невозможно.

Выходом является испытание статических переменных. Такие переменные не инициализируются повторно при вызове процедуры. Для того, чтобы объявить внутри процедуры статическую переменную, необходимо оператор Dim заменить на зарезервированное слово Static.

Static Z As Integer

Например: Пример процедуры обработки события с командной кнопкой, которая подсчитывает число щелчков мышью и выводит суммарное значение.

Private Sub Command1_Click()

Static Counter As integer

Counter = Counter + 1

Print Counter

End sub

При первом щелчке счетчику присваивается значение по умолчанию ноль. Затем Visual Basic добавляет к нему единицу и затем выводит результат.

Иногда требуется, чтобы все переменные в процедуре были статическими. Для этого необходимо добавить зарезервированное слово Static перед строкой Private Sub, с которой начинается любая процедура.

Static Private Sub Command 1_Click ()

Строки.

Для того чтобы сложить две строки вместе (конкатенация) можно использовать операторы & или +

Например:

Title$ = «Queen»

Name$ = «Elizabeth»

Numeral$ = «I»

A$ = Title$ & Name$ & Numeral$

Результат - «Queen Elizabeth I»

Оператор & объединяет строки в том порядке, как они представлены.

Основным отличием оператора & от + является возможность использования оператора & для объединения строковых данных c другими типами. Например: C = A% & B$ объединяет целочисленную и строковую переменные, изменяя тип их значений на Variant.

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

Например: вывод многостроковой информации в поле ввода и информационной панели.

TextString$ = «Visual» + vbCrLf

TextString$ = TextString$ + «Basic» + vbCrLf

TextString$ = TextString$ + «for Windows»

Text1.Text = TextString$

MsgBox TextString$

Строки фиксированной длины

Подобные переменные создаются при помощи оператора Dim. Например:

Dim ShortString As String * 5

Если присвоить переменной ShortString более длинную строку, например:

ShortString = «abcdefg»

То в результате значение переменной будет равно только первые пять символов.

ShortString = «abcde»,

и обратно, если присвоить строке более короткую строку, например: «abc», то к новому значению справа добавятся недостающие до пяти символов пробелы.

Числа и константы.

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

Для того чтобы преобразовать строку цифр в число используется встроенная функция Val.

Val («3001») = 3001

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

Val («300Something») = 300

Аналогичным образом можно преобразовать число в строку символов простейшим способом является использование функции Str.

Str (123), результат - «123».

Операции над числами.

Существует пять фундаментальных операций:

1. «+» - сложение.

Вычитание (обозначение отрицательных чисел).

Деление.

4. «*» - умножение.

5. «^» - возведение в степень.

Для целых и длинных целых существует ещё две арифметические операции.

«\» - целочисленное деление

«Моd» - остаток после целочисленного деления. Например:

7\3 = 2

7 Моd 3 = 1

Работа с переменными типа Date.

Если к переменной типа Date добавить или отнять от нее целое число, то хранимая дата увеличится или уменьшится на соответственное количество дней, дробная часть числа будет влиять на время внутри одного дня. Например:

Dim FOO As Data

FOO = Now

Print FOO

Print FOO - 1000

При этом выведется текущая дата и время, и время и дата на 1000 дней назад.

Скобки и порядок выполнения операций.

При выполнении вычислений существуют два способа, позволяющих указать порядок, в котором должны происходить операции. Первый состоит в применении скобок. Например, 5*(3+4), приоритет операций в скобках дает результат 35.

Второй - это порядок иерархии в выполнении арифметических операций:

Возведение в степень.

Изменение знака числа (с положительного на отрицательный).

Умножение и деление.

Целочисленное деление.

Операция Mod.

Сложение и вычитание.

Преобразование типов данных.

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

Функции Результат
CInt CLnq CSnq CDbl CCur CStr CVar CBool CByte CDate Округляет число до целого Округляет число до длинного целого Преобразует число с обычной точностью Преобразует число с двойной точностью Преобразует число Currency Преобразует любые выражения в строку Преобразует любое выражение к типу Variant Преобразует число к типу Boolean Преобразует число к типу Byte Преобразует подходящее выражение в дату.

Константы.

Именованные константы Visual Basic позволяют использовать мнемонические имена для неизменных значений. Константы объявляются аналогично переменным, на них распространяются те же правила: не более 200 символов и первый символ обязательно буква.

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



Поделиться:


Последнее изменение этой страницы: 2016-08-16; просмотров: 817; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.178.162 (0.008 с.)