- •Институт информационных систем управления
- •Кандидат экономических наук, доцент в.А. Машурцев
- •Введение.
- •Глава 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
12.5.3. Метод Circle.
Этот метод позволяет изобразить на объекте такие фигуры как окружность, эллипс, дугу и сектор. Его синтаксис:
object.Circle [Step] (x,y), radius, [color], [start], [end], [aspect]
Параметры Step и color имеют тот же смысл, какой описан в предыдущих разделах. Параметр (x, y) является координатами центра изображаемой фигуры. Если параметр color опущен, то ограничивающая фигуру линия изображается цветом, задаваемым значением свойства ForeColor. Если изображается окружность, то параметры start, end и aspect отсутствуют. Смысл параметра radius в пояснении не нуждается. Если нужно изобразить эллипс, то кроме радиуса нужно задавать значение параметра aspect. Этот параметр численно должен быть равен отношению вертикальной полуоси эллипса к его горизонтальной полуоси. Если это отношение больше единицы, то эллипс будет вытянут по вертикали, если меньше, – то по горизонтали. При значении aspect = 1 эллипс вырождается в окружность. Параметры start и end предназначены для изображения дуг и секторов. Они определяют угол начала изображения дуги и угол окончания изображения. Оба угла отсчитываются от положительного направления горизонтали против часовой стрелки и должны задаваться в радианах. Если параметру start предшествует знак минус, то этот конец дуги будет соединен с центром. Это же относится и к параметру end. Если знак минус указать перед обоими параметрами, то будет изображен сектор. Если какой либо из внутренних параметров не указан, это не отменяет его запятую. Так например, чтобы изобразить эллипс, можно записать оператор:
Form1.Circle (2000,2000), 500, vbMagenta, , , 0.5
В результате будет линией малинового цвета изображен эллипс с центром в точке с координатами (2000, 2000), у которого вертикальная полуось равна 500, а горизонтальная – в два раза больше т.к. значение параметра aspect задано равным 0.5.
На следующем рисунке приведен результат выполнения процедуры:
Private Sub Command1_Click()
FillStyle = vbDiagonalCross
FillColor = vbGreen
Form1.Circle (4000,2500), 2000, vbBlue, - 1.5, - 2.7, 0.6
End Sub

Рис. 12.5. Вид формы в результате выполнения процедуры
В заключение раздела приведем совсем простую процедуру, которая будет визуализировать на форме вращающийся круг, стороны которого окрашены разным цветом. Откроем новый проект и на форме расположим всего 2 командные кнопки. Коды процедур обработки событий Click для этих кнопок приведены ниже.
Private resp!, i&
Private Sub Command1_Click()
FillStyle = vbSolid
DrawWidth = 5
Do While True
If resp >= 0.8 Then
FillColor = vbGreen
For resp = 0.8 To 0 Step -0.01
For i = 1 To 250000
If i Mod 2500 = 0 Then Circle (3500, 2000), 2000, , , , resp
Next i
Me.Cls
DoEvents
Next resp
ElseIf resp <= 0 Then
FillColor = vbYellow
For resp = 0 To 0.8 Step 0.01
For i = 1 To 250000
If i Mod 2500 = 0 Then Circle (3500, 2000), 2000, , , , resp
Next i
Me.Cls
DoEvents
Next resp
End If
Loop
End Sub
Private Sub Command2_Click()
End
End Sub
Эффект вращения круга достигается периодическим изменением параметра respect изображаемого на форме эллипса (переменная resp).
После визуализации на форме очередного состояния эллипса в течении 2500 оборотов вложенного регулярного цикла происходит очищение формы для прорисовки следующего состояния эллипса. При обращении к методу Circle можно не указывать параметр object (т.е. Form1)
так как активной все время является единственная форма проекта.
В процедуре организована конструкция бесконечного итерационного цикла Do While True . . . Loop. Чтобы обеспечить завершение работы приложения в любой момент времени щелчком по второй командной кнопке, используется оператор DoEvents. Он позволяет на очень короткое время прервать выполнение операторов цикла и обработать произошедшие к этому моменту события, в том числе и событие Click второй командной кнопки.
