- •Введение
- •Лабораторная работа № 1 (2 часа)
- •Среда разработки Visual Basic 6
- •Запуск Visual Basic 6
- •Панель инструментов
- •Окно форм
- •Окно проекта
- •Инструментальная панель элементов
- •Окно свойств
- •Окно макета форм (компоновки формы)
- •Окно Конструктора форм
- •Окно программы vb
- •Разработка пользовательского интерфейса
- •Задание для самостоятельной работы
- •Лабораторная работа № 2 (4 часа)
- •Системы координат
- •Выбор стандартного масштаба
- •Свойства ScaleLeft, ScaleTop
- •Свойства ScaleWidth и ScaleHight
- •Метод Scale
- •Р ис. 14 Иллюстрация к Упражнению 3.
- •Графические элементы управления
- •Объект управления типа «линия»
- •Объект управления типа «фигура»
- •Графические методы
- •Свойства CurrentX и CurrentY
- •Рисование линий
- •Установка цвета
- •Использование относительных координат (параметр Step)
- •Рисование прямоугольников
- •Рисование окружностей
- •Стиль заполнения замкнутых фигур
- •Лабораторная работа № 3 (2 часа)
- •Рисование диаграмм
- •Рисование кривых
- •Задание для самостоятельной работы
Лабораторная работа № 3 (2 часа)
Тема занятия: Рисование графиков и диаграмм графическими методами
Рисование диаграмм
Метод Circle можно использовать для рисования круговых диаграмм. Эти диаграммы наглядно показывают долю чего-нибудь в общем количестве. На круговой диаграмме угловой размер соответствующего сектора и определяет долю от общего числа, которое принимается за единицу, или 100%.
Упражнение 1.
Допустим, что на промежуточной аттестации знаний по одному из предметов студенты курса показали следующие результаты: 5% получили оценку «отлично», 17% – «хорошо», 36% – «удовлетворительно», остальные 42% – «плохо» либо были не аттестованы. Обратите внимание, что сумма всех показателей должна составлять 100%.
Создать новое приложение, в нем создать форму c именем Form1 и заголовком. «Результаты успеваемости».
На форме создать четыре маленьких графических поля для условных обозначений с одним именем Picture1 (массив объектов) и одно большое для вывода результатов Picture2 (рис.21).
Создать командную кнопку с именем Command1.
В окне свойств массиву объектов Picture1 свойству Index присвоить значения с 1 до 4. Таким образом, имена графических полей будут Picture1(1), Picture1(2) и т.д. Это избавит вас от написания одинакового кода для четырех объектов.
Написать процедуру для прорисовки сектора, где StartSec, EndSec – углы, ограничивающие сектор:
Sub Sector(StartSec, EndSec)
Picture2.Circle (0, 0), 0.8, , StartSec, EndSec
End Sub
Написать процедуру рисования «условных обозначений».
Sub UslObozn(Num As Integer, Znach As Single)
Picture1(Num).Line (1, -1)-(-1, 0.2), vbWhite, B
Picture1(Num).PSet (-1.1, 1)
Picture1(Num).Print Znach; "%"
End Sub
Для командной кнопки процедура будет следующей:
Private Sub Command1_Click()
Dim i As Integer
Dim mark(4) As Single
Const Pi = 3.1415
‘Присвоение значений
mark(1) = 5
mark(2) = 17
mark(3) = 36
mark(4) = 42
‘Масштабирование полей
For index = 1 To 4
Picture1(index).Scale (-1, 1)-(1, -1)
Next
Picture2.Scale (-1, 1)-(1, -1)
‘Вывод условных обозначений
For i = 1 To 4
Picture1(i).FillStyle = 3 + i
Call UslObozn(i, mark(i))
Next
‘Рисование четырех секторов
a2 = -0.00001
For i = 1 To 4
Picture2.FillStyle = 3 + i
a1 = a2: a2 = a1 - 2 * Pi * mark(i) / 100
Call Sector(a1, a2)
Next
End Sub
Запустите приложение. Щелкните по командной кнопке. На рис. 22 приведена экранная форма с круговой диаграммой, которая даёт наглядное представление об успеваемости.
В проделанном упражнении уже даны доли (проценты) каждой части, пропорционально которым строится каждый сектор диаграммы. Если даны абсолютные величины, то требуется предварительно пересчитать их, приняв сумму абсолютных значений за единицу.
Например, задача сформулирована следующим образом. Из 25 человек оценку «5» получили 2 человека, «4» - 4 человека, «3» - 10, остальные – неудовлетворительную оценку. Тогда, переменные mark(i) будут равны:
mark(1) = 2/25*100
mark(2) = 4/25*100
mark(3) = 10/25*100
mark(4) = 9/25*100