- •Институт информационных систем управления
- •Кандидат экономических наук, доцент в.А. Машурцев
- •Введение.
- •Глава 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
5.2.2. Вызов процедуры на выполнение.
Вызвать процедуру на выполнение можно двумя способами:
Call <имя процедура> (<список фактических параметров>)
или
<имя процедура> <список фактических параметров>
Фактические параметры являются реально существующими, загружаемыми в оперативную память данными, которые передаются процедуре на обработку, а также переменными, в которые помещается возвращаемый результат. При этом требуется, чтобы:
-
Очерёдность в списке фактических параметров соответствовала их очерёдности в списке формальных параметров.
-
Фактические и формальные параметры должны быть согласованы между собой по типам.
-
Если процедура предназначается для обработки массива, то в списке формальных параметров он должен быть представлен как динамический.
Досрочный выход из процедуры осуществляется оператором Exit Sub.
Замечание. Оператором Call можно вызвать на выполнение не только процедуру пользователя, но и процедуру обработки события Click командной кнопки, расположенной даже на другой форие (если эта процедура объявлена с ключевым словом Public). Например, чтобы из процедуры Private Sub Command1_Click(). расположенной на форме Form1, вызвать на выполнение процедуру Public Sub Command3_Click(), расположенную на форме Form2, нужно в процедуру Private Sub Command1_Click() поместить код Call Form2.Command3_Click. В этом случае после имени события Click скобки не указываются. Можно даже не указывать оператор Call, т.е. записать код: Form2.Command3_Click. Все это справедливо и для процедур обработки события Click элементов Меню.
Например, из процедуры mnuView_Click(), расположенной на форме Form1, можно вызвать на выполнение процедуру mnuTab2_Click(), расположенную на форме Form2 и объявленную с ключевым словом Public, поместив в процедуру mnuView_Click() код: Call Form2.mnuTab2_Click.
5.3. Функции пользователя.
Функции пользователя во многом схожи с процедурами пользователя.
Их синтаксис:
[Public] [Private] [Static] Function < имя функции > (<список
формальных параметров>) [As <тип функции>]
[Объявления локальных переменных]
Операторы тела функции
End Function
В отличие от процедур функции, как и переменные, имеют тип, задаваемый с помощью ключевого слова As. Если тип не задан, по умолчанию он будет Variant. В заголовке функции для указания ее типа можно использовать суффикс. Суффикс указывается сразу после имени функции (перед скобками со списком аргументов). Например:
Private Function F#(a%, b As Boolean, c&)
Досрочный выход из функции осуществляется при выполнении некоторого условия с помощью оператора Exit Function.
Среди параметров функции отсутствует параметр, в который помещается результат, как это имеет место для процедур. В отличие от процедур, позволяющих получать множественный результат, функция возвращает всегда единственное значение, которое присваивается имени функции. Поэтому нет необходимости в параметре, предназначенном для передачи ему результата. Тип результата определяется типом функции. Чтобы функция вернула результат, в её теле хотя бы один раз должен быть выполнен оператор:
<имя функции> = <выражение>
Здесь <выражение> это переменная, константа или выражение, содержащие величину, возвращаемую функции в качестве результата. Вызов функции осуществляется указанием её имени со списком фактических параметров в операторе присвоения, либо в качестве аргумента выражения, или в качестве значения свойства.
Критерием выбора, что использовать для решения задачи процедуру или функцию, является количество возвращаемых значений. Единственный результат можно получить обеими, если же возвращается несколько значений, то необходимо использовать процедуру. Основное отличие функций от процедур заключается в том, что функции могут использоваться в качестве операндов в операторах, т.е. с ними можно производить арифметические и логические операции.
Пример. Написать процедуру и функцию вычисления факториала.
Процедура: Функция:
Private Sub Fakt(n%, fkt&) Private Function Fakt(n%) As Long
Dim i As Integer Dim i As Integer, fkt As Long
fkt = 1 fkt = 1
For i=1 To n For i = 1 To n
fkt =fkt * i fkt = fkt * i
Next I Next i
End Sub Fakt = fkt
End Function