Среда Visual Basic

Автор работы: Пользователь скрыл имя, 25 Марта 2013 в 11:36, реферат

Описание

Visual Basic разработан в 1991 г. фирмой Microsoft как удобное и мощное средство
визуального проектирования программ, работающих в операционной среде Windows.
При относительной простоте языка, он позволяет быстро создавать программный
продукт, который мало отличается от подобных продуктов, созданных профессионалами
с использованием языков C и Pascal.
Модификация языка Visual Basic может использоваться в Microsoft Office, в частности в Excel и Access. Он обеспечивает простой доступ и эффективную обработку
данных различных систем управления базами данных (СУБД).

Работа состоит из  1 файл

Лекции по VB.doc

— 1.35 Мб (Скачать документ)

 

Иногда в процессе выполнения программы  размер массива требуется менять. В этом случае массив объявляется  как динамический.

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

 

Dim <ИмяМассива> () As <ИмяТипа>

 

Затем количество элементов в объявленном  массиве и его размерность  в процессе выполнения программы  можно определить и переопределить с помощью оператора ReDim, который имеет вид:

 

ReDim [Preserve] <ИмяМассива> (<ГраницыИндексов>) [As <ИмяТипа>]

 

где:

ReDim – ключевое слово, указывающее, что переопределяются размеры массива;

Preserve – необязательное ключевое слово, с помощью которого дается указание, чтобы все элементы переопределяемого массива сохранили свои значения;

<ГраницыИндексов> – новые границы индексов и новая размерность (можно использовать числа, константы или переменные);

<ИмяТипа> – имя прежде  объявленного типа, можно использовать  суффикс.

 

Dim mas() As Byte

ReDim mas(9)  ‘Одномерный массив

ReDim mas(3, 5)  ‘Двухмерный массив

ReDim mas(2 To 4, 8) ‘Двухмерный массив с новыми границами

 

Итак массивы можно переопределять, но при этом теряется их содержимое. Использование ключевого слова  Preserve дает возможность сохранения данных, но накладывает некоторые ограничения:

-  Нельзя менять размерность массива (например: одномерный на двухмерный);

  • В одномерном массиве можно менять только верхнюю границу (наибольшее значение индекса);
  • В многомерном массиве можно менять только последнее измерение и только верхнюю границу (наибольшее значение последнего индекса).

 

Динамические массивы можно  уничтожать:

Erase <ИмяМассива1> [,<ИмяМассива2>, …]

7.3. Присвоение массивов

 

Начиная с VB 6.0 имеется возможность присвоения содержимого одного массива другому (MasIn = MasOut). Попытка присвоения может быть успешной или неуспешной в зависимости от следующих факторов:

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

 

Результаты присвоения массивов приведены  в таблице 7.3.1.

 

 

 

Таблица 7.3.1

Тип массива в левой части  оператора присваивания

Совпадают ли размерности массивов?

Совпадает ли число элементов в  каждой размерности?

Тип массива в правой части оператора присваивания

Результат присваивания

Динамический

Да или нет

Да или нет

Любой

Успешно. Размерность и число  элементов массива левой части  оператора присваивания при необходимости  меняется

Статический

Да или нет

Да или нет

Любой

Неуспешно, ошибка компиляции или выполнения


 

8. Типы данных, определяемые пользователем

 

Создание нового типа осуществляется следующей конструкцией:

 

[Private / Public] Type <ИмяТипа>

<ИмяПеременной1> [([<Размерность1>])] [As <ИмяТипа1>]

[<ИмяПеременной2> [([<Размерность2>])] [As <ИмяТипа2>]

  ...............................................................

<ИмяПеременнойN> [([<РазмерностьN>])] [As <ИмяТипаN>]]

End Type

 

Тип переменной может быть любым, в  том числе и созданным ранее  пользователем.

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

 

(General)    (Declarations)     ‘Модуля

Type ss

a() As Integer

b As Byte

End Type

 

Command1    Click

Private Sub Command1_Click()  ‘Формы

Dim s As ss

ReDim s.a(2, 3)

s.a(1, 2) = 1

Print s.a(1, 2), s.a(1, 1), s.b          ‘ 1 0 0

End Sub

 

Если изначально модуля нет, его надо создать: войти в  опцию “Проект”  Главной панели верхнего меню, далее “Добавить  модуль”, получим окно, которое дает возможность добавить модуль или  использовать уже существующий.

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

Чтобы упростить доступ к переменным можно использовать оператор With,

который имеет вид:

 

With <НачальнаяЧастьИмени>

<Операторы с переменными без  начальной части имени>

End With

 

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

 

Пример:

(General)    (Declarations)

Option Explicit

Private Type dat

  Y As Integer

  M As String * 10

  D As Byte

End Type

 

Private Type pr

  Fio As String * 15

  Pol As String * 1

  Bd  As dat

End Type

 

Form            Click

Private Sub Form_Click()

Dim P As pr

P.Fio = "Иванов"

Print P.Fio              'Иванов

With P

  .Pol = "М"

   Print .Pol             'М

  .Bd.Y = 1985

   Print .Bd.Y            '1985

   With .Bd

     .M = "Январь"

      Print .M             'Январь

   End With

End With

With P.Bd

  .D = 28

   Print .D               '28

End With

End Sub

 

 

 

 

 

9. Константы

 

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

 

Примеры неименованных констант:

 

“Visual”, “45.1” – две неименованные символьные константы;

68, 1024 – две неименованные десятичные  целые константы, целые числа;

&H16, &H10 – две шестнадцатеричные константы, равные 22 и 16;

&O16, &O10 – две восьмеричные константы, равные 14 и 8;

3.8, 44., .3e1, -4.5E-1 – четыре вещественные константы, вещественные числа.

 

Среди именованных констант будем различать встроенные константы  VB и константы, созданные пользователем (программистом). Информацию о существующих константах можно получить, обратившись к каталогу объектов – “Проводник Объектов” (см. Рис. 11.), который можно вызвать клавишей F2.

Пользователь может объявить (создать) собственную константу  следующим образом:

 

[Public / Private] Const <ИмяКонстанты> [As <ИмяТипа>] = <Значение>

 

Примеры:

Const Pi As Single = 3.14159265

Public Const Name As String * 10 = “Вася”

Const I% = 5

 

10. Перечни

 

 Перечни служат для  объявления группы целочисленных  констант, объединенных общим именем. Перечень может быть объявлен только в разделе глобальных переменных модуля или формы. Для этого используется ключевое слово Enum (Enumeration – перечень):

 

[Public / Private] Enum <ИмяПеречня>

<ИмяКонстанты1> [ = <Значение1>]

<ИмяКонстанты2> [ = <Значение2>]

..............................................................

<ИмяКонстантыN> [ = <ЗначениеN>]

End Enum

 

Для обращения к константам перечня используется составное  имя:

 

<ИмяПеречня>.<ИмяКонстанты>

 

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

 

(General)    (Declarations)

Enum n

Num1

Num2 = -23.4

Num3 = -23.5

Num4

Num5 = 10.4

Num6 = 10.5

Num7 = 10.6

Num8

End Enum

 

Command1    Click

Private Sub Command1_Click()

Print n.Num1; n.Num2;  Num3;   Num4;   Num5;   Num6;   Num7;   Num8

End Sub ‘ 0     -23       -24         -23          10         10           11           12

 

11. Операции

 

Мы рассмотрим следующие операции:

      - арифметические;

      - логические;

      - отношения;

      - с символьными строками 

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

11.1. Арифметические операции

 

Арифметические операции применимы  только к величинам целых и вещественных типов.

Операции изменения знака:

+         знак  +,  поставленный перед числом, не  меняет его значения;

-          знак минус, поставленный перед  числом, приводит к изменению его знака.

 

Остальные операции в таблице 11.1.1:

Таблица 11.1.1

Знак

Операция

Тип чисел

Тип результата

+

Сложение

Целые

Хотя бы один вещественный

Целые

Вещественный

-

Вычитание

Целые

Хотя бы один вещественный

Целые

Вещественный

*

Умножение

Целые

Хотя бы один вещественный

Целые

Вещественный

/

Деление

Любые

Вещественный

\

Деление целых чисел

Целые

Целый

Mod

Остаток от деления целых чисел

Целые

Целый

^

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

Любые

Вещественный


 

Замечания:

1) Деление на ноль запрещено. 

2) Пример операции деления целых  чисел:

10 MOD 3 = 1

10 \ 3 = 3

 

11.2. Логические операции

 

Логические операции применяются  к величинам логического типа, результат тоже логического типа. Это операции:

Not -- отрицание, не, нет;

And  – и;

Or  -- или;

Xor  -- исключающее или;

Eqv  – эквивалентность;

Imp  – включение (левое в правое).

 

Рассмотрим операцию NOT:

Таблица 11.2.1.

X

Not X

FALSE

TRUE

TRUE

FALSE


 

 

Рассмотрим остальные операции:

Таблица 11.2.2.

   X

   Y

   X And Y

   X Or Y

   X Xor Y

X Eqv Y

X Imp Y

FALSE

FALSE

FALSE

FALSE

FALSE

TRUE

TRUE

FALSE

TRUE

FALSE

TRUE

TRUE

FALSE

TRUE

TRUE

FALSE

FALSE

TRUE

TRUE

FALSE

FALSE

TRUE

TRUE

TRUE

TRUE

FALSE

TRUE

TRUE


 

11.3. Операции отношения

 

Операции отношения предназначены  для сравнения двух величин (величины должны быть сравнимых типов). Могут сравниваться числа и символьные строки. Результат сравнения имеет логический тип (значения: TRUE или FALSE).

Операции отношения следующие:

= - равно;

<> - не равно;

< - меньше;

> - больше;

<= - меньше или равно;

>= - больше или равно;

Like - соответствует ли шаблону.

 

Операция Like проверяет, соответствует ли строка символов, стоящая слева от Like, шаблону, стоящему справа. Шаблон состоит из символов:

?    -     указывает, что в  этой позиции может стоять  любой символ: “s%5” Like “???” =

            True;

#    -     указывает, что в  этой позиции может стоять только цифра: “a52” Like “?##” = True;

*    -     указывает, что в  этой позиции может стоять  любое количество любых символов:                            

            “ab2” Like “a*” = True;

-      любой символ  указывает, что в этой позиции может быть только этот символ:

      “abc” Like “?b?” = True;

  • перечень символов в квадратных скобках означает, что можно использовать один из них: “a2b” Like “a[123]b” = True;
  • перечень символов в квадратных скобках начинающийся с символа “!” означает, что нельзя использовать символы из этого перечня: “a2” Like “[ab][!12]” = False;
  • внутри перечня может находиться знак диапазона “-“: “abc” Like “a[a-e]?” = True.

 

Сравнение символьных строк осуществляется слева направо в соответствии с ASCII-кодами соответствующих символов. Сравнивать можно строки разной длины. Выравнивание символьных строк осуществляется по левому краю. Считается, что отсутствующие символы в более короткой строке имеют код меньше, чем код любого символа: “AB” > “A”, “AB” < “ACD”, “AB” < “AC”, “ABC” < “AC”, “я” < “ё”.

 

11.4. Операции с символьными строками

 

 В VB кроме операций сравнения есть только одна операция для работы с символьными строками – это операция конкатенации или соединения или объединения символьных строк. Знаком операции является символ амперсант - & или символ плюс - +. Результатом операции является более длинная строка, составленная из исходных строк:

 

SResult = “Студент” & “ Иванов”    ‘SResult = “Студент Иванов”

SResult = “Студент” + “ Иванов”    ‘SResult = “Студент Иванов”

Если в результате объединения  строк получается строка большей  длины, чем объявлена переменная (SResult), то строка обрезается справа.

11.5. Порядок вычисления выражений

 

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

Таблица 11.5.1

Приоритет

Тип действия

Элементы

1

Вычисление функций

Log, Exp, Sin и т. д.

2

Изменение знака

+ , - 

3

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

^

4

Тип умножения

* , /

5

Деление целых чисел

\

6

Остаток от деления целых чисел

Mod

7

Тип сложения

+ , -

8

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

& , +

9

Операции  отношения

=, >, >=, <, <=, <>, Like

10

Отрицание

Not

11

И

And

12

Или

Or

13

Исключающее Или

Xor

14

Эквивалентность

Eqv

15

Включение

Imp


 

Чем меньше приоритет, тем раньше выполняется  действие. Кроме того, в пределах одного приоритета вычисления  выполняются слева направо.

 

12. Операторы

 

Оператор, это некоторое  поручение, которое должна выполнить ЭВМ.

Информация о работе Среда Visual Basic