- •Институт информационных систем управления
- •Кандидат экономических наук, доцент в.А. Машурцев
- •Введение.
- •Глава 1. Vb 6.0 – среда разработки приложений.
- •1.1. Окна среды vb.
- •1.2. Файловая структура проекта.
- •1.3. Визуальное конструирование приложения.
- •1.4. Основные свойства формы и задание их значений.
- •1.5. Добавление форм к проекту и удаление форм из проекта.
- •1.6. Основные элементы управления и их свойства.
- •1.6.1. Элемент Label.
- •1.6.2. Элемент TextBox. Элемент TextBox (текстовое окно) предназначен для ввода исходной
- •1.6.3. Элементы HscrollBar и VscrollBar.
- •1.6.4. Элемент CommandButton.
- •1.7. События и методы.
- •1.8. Включение изображений в интерфейс пользователя.
- •1.8.1. Элемент Image. Элемент управления Image предназначен в основном для нанесе-
- •1.8.2. Элемент PictureBox.
- •1.9. Сохранение проекта.
- •Глава 2. Данные vb.
- •2.1. Типы данных.
- •2.1.1. Типы числовых данных.
- •2.1.1.1. Целочисленные данные.
- •2.1.1.2. Вещественные данные.
- •2.1.2. Типы нечисловых данных.
- •2.2. Объявление переменных и констант.
- •2.3. Область видимости переменных и констант.
- •2.4. Совместимость и преобразование типов данных.
- •2.5. Ввод исходных данных и вывод результатов обработки.
- •2.5.1. Окно сообщений. Оператор и функция MsgBox.
- •2.6. Форматирование вывода чисел.
- •Глава 3. Алгоритмизация вычислительных процессов.
- •3.1. Алгоритм и его свойства.
- •3.2. Типы вычислительных процессов.
- •3.3. Операторы vb.
- •3.4. Логические выражения.
- •3.5. Управляющие конструкции.
- •3.5.1. Операторы ветвлений.
- •3.5.1.1. Условный оператор.
- •3.5.1.2. Оператор выбора.
- •3.5.2. Операторы циклов.
- •3.5.2.1. Регулярный цикл.
- •3.5.2.2. Итерационные циклы.
- •3.5.2.3. Цикл перечислимого типа.
- •3.5.3. Элементы выбора.
- •3.5.3.1. Элемент CheckBox.
- •3.5.3.2. Элемент OptionButton.
- •3.5.4. Элемент управления и функция Timer.
- •3.5.5. Дата и время.
- •3.5.6. Оператор DoEvents.
- •3.5.7. Объединение кнопок в группы.
- •3.5.7.1. Элемент Frame.
- •3.6. Списки.
- •3.6.1. Элемент ListBox.
- •3.6.2. Элемент ComboBox.
- •Глава 4. Массивы.
- •4.1. Одномерные массивы.
- •4.2. Двумерные массивы.
- •4.3. Статические и динамические массивы.
- •4.4. Функция Array.
- •4.5. Генератор случайных чисел.
- •4.6. Функции lBound и uBound.
- •4.7. Массивы элементов управления.
- •4.8. Сопоставление массивов и списков.
- •4.9. Элемент msFlexGrid.
- •4.10. Упорядочение строк элемента msFlexGrid.
- •Глава 5. Процедуры и функции полоьзователя.
- •5.1. Создание стандартного модуля в приложении.
- •5.2.2. Вызов процедуры на выполнение.
- •5.3. Функции пользователя.
- •Глава 6. Обработка текстовой информации.
- •6.1. Изменение регистра символов в тексте.
- •6.2. Поиск заданной подстроки в тексте.
- •6.3. Выборка части текста.
- •6.4. Замена символов в тексте.
- •6.5. Удаление лишних пробелов из строки текста.
- •6.6. Инвертирование строк.
- •6.7. Преобразование текстовых строк в числа и наоборот.
- •6.8. Определение длины текста.
- •Глава 7. Создание меню пользователя.
- •Глава 8. Пользовательский тип данных.
- •8.1. Записи.
- •8.2. Сложные структуры данных.
- •Глава 9. Файлы.
- •9.1. Файлы последовательного доступа.
- •9.1.1. Открытие файла последовательного доступа.
- •9.1.2. Запись информации в файл.
- •9.1.3. Чтение информации из файла.
- •9.1.4. Закрытие файла.
- •9.2. Файлы произвольного доступа.
- •9.2.1. Открытие файла произвольного доступа.
- •9.2.2. Запись информации в файл.
- •9.4. Операции с файлами в vb.
- •9.5. Файловые операторы и функции обработки данных.
- •9.6. Сравнительный пример работы с файлами.
- •Глава 10. Обработка бд Access в среде vb.
- •10.1. Создание бд Access в среде vb.
- •10.2. Использование технологии Data Access Objects (dao).
- •10.2.1. Элемент управления Data.
- •10.2.2. Свойство Recordset элемента Data.
- •10.2.3. Программное связывание элементов.
- •10.3. Технология ActiveX Data Objects (ado).
- •10.3.1. Подключение ado Data к источнику данных (бд).
- •10.3.2. Подключение ado Data к источнику записей.
- •10.3.3. Элемент управления DataGrid.
- •10.4. Объекты ado.
- •10.4.1. Объект Connection.
- •10.4.2. Объект RecordSet.
- •10.4.3. Перемещение по набору записей.
- •10.4.4. Обращение к отдельным полям записи.
- •10.4.5. Выполнение запросов к бд.
- •10.5. Пример обработки бд в рамках технологии ado.
- •Глава 11. Обмен данными между приложениями.
- •11.1. Экспорт данных из бд в текстовый файл.
- •11.2. Технология внедрения и связывания (ole).
- •11.3. Связывание и внедрение на этапе design.
- •11.3.1. Связывание на этапе проектирования. Сразу же после размещения на форме элемента ole появляется
- •11.3.2. Внедрение на этапе проектирования.
- •11.4. Связывание и внедрение объектов на этапе run.
- •11.4.1. Свойства ole-контейнера.
- •11.4.2. Методы ole-контейнера.
- •11.4.3. События, связанные с ole-контейнером.
- •11.4.5. Внедрение объекта на этапе run. Для внедрения объектов в vb-приложение используется метод CreateEmbed. Синтаксис оператора, использующего этот метод:
- •Глава 12. Графические средства vb 6.
- •12.1. Управление цветом.
- •12.2. Изображения в интерфейсе проекта.
- •12.2.1. Наложение изображения на этапе проектирования. Наложение изображения на форму.
- •Восстановление утраченных графических файлов.
- •Наложение изображения на элемент PictureBox.
- •Наложение изображения на элемент CommandButton.
- •12.2.2. Наложение изображений на этапе выполнения.
- •12.3. Использование анимированных изображений.
- •12.3.1. Визуализация анимированных gif-файлов.
- •12.3.2. Визуализация на форме клипов.
- •12.4. Рисунки на графических объектах.
- •12.4.1. Элемент Shape.
- •12.4.2. Элемент Line.
- •12.5. Графические методы.
- •12.5.1. Методы для работы с изображением точки.
- •12.5.2. Метод Line.
- •12.5.3. Метод Circle.
- •12.6. Использование графики для решения отдельных задач.
- •12.6.1. Визуализация процесса сортировки элементов массива.
- •12.6.2. Принадлежность точки заданной области.
- •Приложение 1. Типовые алгоритмы обработки чисел.
- •Приложение 3. Алгоритмы обработки массивов.
- •Приложение 4. Примеры создания процедур и функций.
- •Приложение 5. Пример обработки типизированных файлов.
- •Приложение 6. Пример обработки бд Access в среде vb.
- •Оглавление
- •Глава 1. Vb 6.0 – среда разработки приложений. 4
- •Глава 2. Данные vb. 20
- •Глава 3. Алгоритмизация вычислительных процессов. 33
- •Глава 4. Массивы. 61
- •Глава 5. Процедуры и функции полоьзователя. 77
- •Глава 10. Обработка бд Access в среде vb. 110
- •Глава 11. Обмен данными между приложениями. 139
- •Глава 12. Графические средства vb 6. 150
Глава 4. Массивы.
Для решения некоторых задач исходные или промежуточные данные должны храниться в оперативной памяти для их многократного просмотра или использования. Например, если вы вводите температуру воздуха t для каждого дня месяца, то каждое новое значение переменной t “затирает” его предыдущее значение, и после ввода всех значений определить, какая температура была, например, пять дней назад уже невозможно. Для решения таких задач используются структуры данных называемые массивами.
Массив - это упорядоченная по номерам поименованная совокупность данных одинакового типа. Массив характеризуется именем, размерностью, размером по каждому из имеющихся у него измерений и типом данных, предназначенных для хранения в его элементах. Каждый элемент массива характеризуется:
- именем, совпадающим с именем массива;
- индексом, определяющим его положение в массиве;
- значением.
4.1. Одномерные массивы.
Объявление массива:
Dim <имя массива>(<размерность>) [As <Имя типа>]
Здесь< размерность> это одно или более чисел, представляющих задаваемое максимально возможное значение индекса элемента массива, то есть верхнюю границу диапазона возможных значений индекса. Нижняя граница по умолчанию равна нулю. Так, например, в объявлении Dim B(10) As Integer задан массив 11 целых чисел. Если вы хотите, чтобы индексы начинались не с нуля, а с единицы, то в разделе General формы нужно разместить оператор “Option Base 1”. Тогда в любом объявленном вами массиве для данной формы индексы элементов будут начинаться с единицы. Другим способом изменения нижней границы индекса массива является ее явное объявление:
Dim M (<нижняя граница> To <верхняя граница>) [As <имя типа>]
Например: Dim В (5 To 10) As Byte. Здесь объявлен массив, состоящий из шести элементов, индексация которых начинается с 5. Значение параметра <верхняя граница> должно быть больше значения параметра <нижняя граница>. Верхняя граница не может принимать, значений, определяемых типом переменных Long. Если для указания типа используете суффикс, то его необходимо записывать после имени массива перед круглой скобкой: Dim В% (5 To 10).
Обратиться к отдельному элементу массива можно, указав его имя и за ним в круглых скобках значение его индекса. Так, например, если мы хотим передать переменной r значение пятого элемента массива В, то мы должны написать: r = B(9).
Рассмотренные массивы являются одномерными, их иногда называют векторами. С их помощью можно, например, задать одну строку таблицы. Если нужно задать всю таблицу, т.е. задать матрицу, то нужно использовать столько одномерных массивов, сколько строк имеет матрица. Это нерационально, так как придётся делать много объявлений одномерных массивов. Решает такую задачу двумерный массив.
4.2. Двумерные массивы.
Синтаксис объявления двумерного массива:
Dim M(<индекс строки>,<индекс столбца>) [As <имя типа>]
Например: Dim В(5,6).
К элементу 3-ей строки и 4-ого столбца можно обратиться так: r = B(3,4)
Массивы могут быть многомерными. В одном и том же операторе Dim можно смешивать разные способы задания нижней границы индексов:
Dim В(1 То 4, 20, 1 То к\2)
Здесь задан трёхмерный массив, у элементов которого первый индекс изменяется в пределах от 1 до 4, второй от 0 до 20, третий от 1 до значения выражения k\2.
Индексы элементов массива могут быть представлены только переменной или выражением, принимающим целочисленное значение:
Const n = 5
Dim A(10) As Byte, B(n) As String*5
Здесь мы объявили константу n, а затем верхнюю границу индексов для элементов массива В задаём равной значению этой константы.
Среда VB осуществляет контроль границ индексов массивов, поэтому если в процессе вычислений индекс у некоторого элемента выйдет за установленные при объявлении массива пределы, будет выдано сообщение: “Subscript out of Range”.