Применение средств Visual Basic для графического представления данных.
Цель работы:
визуализация результатов на языке Visual Basic с помощью
различных вариантов графиков функций и гистограмм.
- Введение
- Экранные координаты
- Программирование на Visual Basic
- Типы данных
- Объявление переменных и констант
- Массивы
- Операторы управления
- Графические методы и функции
- Окно кода
1. Введение. Программирование графики.
При различных операциях с окном приложения (масштабирование, перекрытие и
сдвиг окон) изображение в окне необходимо обновлять. При подобных операциях
Windows генерирует событие Paint. Поэтому для восстановления
изображения надо написать процедуру обработки данного события
(Form_Paint). В первый раз эту процедуру надо вызвать самостоятельно,
а в дальнейшем изображение будет восстанавливаться автоматически. Более
простой способ перерисовки экрана установка свойства формы
AutoRedraw=True. Однако это связано с определенными затратами
памяти, необходимыми для хранения образа экрана в памяти ЭВМ.
2. Экранные координаты.
Для указания размеров формы надо задать ее свойства: Width, Height, Left и
Top, показанные на рисунке. Значения этих величин измеряются в twips. Если
требуется работать с другими единицами измерения, то нужно изменить свойство
формы ScaleMode согласно приведенной таблице:
ScaleMode
|
Единицы измерения
|
0 |
Определяются пользователем
|
1 |
twips. По умолчанию.
(1/20 пункта или 1/1440 дюйма или ~0.002 см)
|
2
|
Пункты (1/72 дюйма или 0,035 см.)
|
3 |
Пиксели |
4 |
Символы (1/6 дюйма по вертикали и 1/12 дюйма по горизонтали)
|
5 |
Дюймы |
6 |
Миллиметры |
7 |
Сантиметры |
Если ScaleMode=0, то необходимо установить свойства ScaleHeight, ScaleWidth,
ScaleLeft и ScaleTop, которые аналогичны описанным выше свойствам формы.
Масштаб формы можно изменять программно: либо устанавливая значения нужных
свойств, либо методом Scale, который имеет следующий синтаксис:
[объект.] Scale [(left,top) (right,bottom)],
где в качестве параметров метода указаны координаты левого верхнего и
правого нижнего углов формы. Для того, чтобы установить Декартову систему
координат с центром ( точка (0,0) ) в центральной точке формы с одинаковой
шириной и длиной окна (ScaleWidth=2a,ScaleHeight=2a) необходимо записать
метод Scale в следующем виде
Scale (-a,a) (a,-a).
Вызов метода Scale без параметров восстанавливает исходный масштаб окна формы
(в twips) и возвращает начало координат в левый верхний угол.
3. Программирование на Visual
Basic.
3.1 Типы данных.
В языке Visual Basic введены семь основных типов
данных, которые представлены в таблице.
Тип
|
Описание
|
Занимаемая память (байт)
|
Integer
|
Целый тип
|
2
|
Long
|
Длинный целый тип
|
4
|
String
|
Текстовый тип
|
1 байт на символ
|
Currency
|
Числовой тип с фиксированной десятичной точкой
|
8
|
Single
|
Вещественный тип одинарной точности
|
4
|
Double
|
Вещественный тип двойной точности
|
8
|
Variant
|
Произвольный тип
|
Зависит от конкретного значения
|
Тип Currency (валюта) предназначен специально для
финансовых расчетов. Число такого типа всегда имеет точность до четвертого
знака после точки. Например, число 21,00003 округляется до 21,0000, То есть
это тип данных с фиксированной точкой.
Переменная типа Variant (варьируемый) способна принимать любое
значение. Данные этого типа в действительности всегда состоят из двух частей:
собственно значения (любого типа) и кода, указывающего на истинный тип
данных.
3.2 Объявление переменных и
констант.
Синтаксис объявления переменной следующий.
Dim <переменная> [As тип]
Если опущено ключевое слово As, то Visual Basicприсвоит
переменной тип Variant. По умолчанию числовой переменной присваивается
нулевое значение.
Оператор Dim, расположенный в процедуре, создает только локальные
переменные. Глобальные и действующие на уровне модуля переменные должны быть
явно описаны операторами Dim и Global в разделе общих
объявлений (general). Синтаксис оператора Global:
Global <переменная> As тип.
Для хранения постоянных величин используются константы:
Const имя=выражение.
Например, Cjnst One=1.
3.3 Массивы.
Для объявления массива используется следующая запись.
{Dim | Global} имя(maxSize) [As тип].
Размерность массива (maxSize) является величиной целого типа. Нумерация
элементов массива от 0 до maxSize.
3.4 Операторы
управления.
Условный оператор.
If выражение Then
[оператор]
[Else
[оператор]
]
End If
Управление циклом.
А. С проверкой в начале цикла.
Do {While | Until} выражение
[оператор]
Loop
Б. С проверкой в конце цикла
Do
[оператор]
Loop {While | Until} выражение
Оператор For.
For переменная=начальное значение To конечное значение
[Step приращение]
[оператор]
Next
4. Графические методы и
функции.
В этом разделе будет описан синтаксис необходимых для выполнения
лабораторной работы методов и функций программирования графики.
Cls стирает все изображение и текст в указанном объекте
[объект.] Cls
Line рисование линии в указанном объекте
[объект.] Line [[Step](x1,y1)] -
[Step](x2,y2) [,цвет] [,B[F]]
где (x1,y1)-начальная точка линии. Если она не указана, линия начинается
от текущей позиции. Вторую пару координат нужно указывать обязательно
-(x2,y2).
Параметр <цвет> определяет цвет линии. Если он не задан, то
для рисования используется значение свойства формы ForeColor. Для явного
задания значения цвета необходимо использовать функцию QBColor(i), где
i- константа, определяющая значение цвета. Значения констант можно
просмотреть, используя справочную систему Visual Basic (Help).
Если указана буква B (Box-прямоугольник), то вместо линии вычерчивается
прямоугольник; пары координат определяют положение его противоположных по
диагонали углов. Прямоугольник заполняется цветом, указанным в FillColor, а
тип заполнения определяется свойством FillStyle формы. Если есть буква F, то
прямоугольник закрашивается тем же цветом, что и границы. Параметр F
используется только вместе с параметром B.
End завершает работу приложения.
Для нахождения других стандартных функций Visual Basic рекомендуется
воспользоваться справочной системой Help.
Функция в Visual Basic имеет следующий
синтаксис:
Function <имя> [( [параметр [As <тип1>]][,
]
)] [As <тип2>]
<операторы>
<имя>=выражение
<операторы>
End Function
Строка <имя>=выражение нужна для того, чтобы функция возвращала
значение. <Тип2> указывает на тип возвращаемой величины. В круглых
скобках описаны формальные параметры данной функции, фактические значения
которых задаются при ее вызове.
Программирование расчета значений координат может быть реализовано с
помощью отдельно написанной функции, вызов которой осуществляется в цикле.
Программный код функции размещается в разделе общих объявлений
(general) списка Object в окне кода.
Для установки курсора в позицию X, Y формы требуется установить значения
свойств CurrentX=X, CurrentY=Y. Эти свойства доступны только в период
выполнения программы. Последующий вывод информации методом Print будет
осуществляться, начмная с точки с координатами (CurrentX, CurrentY).
5. Окно кода.
Когда создается внешний вид формы, и на нее вносятся инструменты,
Visual Basic автоматически подготавливает шаблоны процедур для обработки
событий. Чтобы открыть окно кода необходимо дважды щелкнуть на выбранном
объекте.
В списке Object можно выбрать интересующий объект, а в списке
Proc событие, реакцию на которое нужно оформить в виде программы.
Сам код помещается между двумя ключевыми словами Sub, End Sub.
Введенный код будет храниться в том же файле, что и экранные объекты
формы.
|