
- •Процесс создания приложения. Основные понятия visual basic
- •Процесс создания Windows-приложения
- •Объекты и их свойства
- •Свойства в visual basic
- •События-процедуры
- •Режимы интерпретации и компиляции
- •Окна Project Explorer и Form Layout
- •Метод Move
- •Метод Print
- •Переменные
- •Константы
- •Глобальные, контейнерные и локальные переменные
- •Статические переменные
- •Таймеры
- •Линейки прокрутки
- •Урок №7
- •Операторы. Выражения. Функции.
- •Оператор присваивания
- •Урок №8
- •Системные функции
- •Msgbox Текст [Опция] [, Заголовок]
- •Обработка строковых выражений
- •Функции выделения подстроки
- •Урок №9
- •Простые и сложные условия, логические выражения.
- •Операторы управления
- •Программирование ветвлений.
- •Урок №10
- •Программирование сложных условий. Вложенный оператор if.
- •If условие1 then
- •Урок 11
- •Обработка событий мыши
- •Свойство MousePointer
- •Технология Drag-and-Drop
- •Графические объекты
- •Объект Комбинированное окно
- •Оператор Select Case
- •Функции задания цвета rgb и qbColor
- •Графические методы
- •События МouseDown и МouseUp
- •Элемент управления Shape
- •Функция rnd
- •Повторения и циклы.
- •Урок 18
- •Циклы с условием
- •Вложенные циклы
- •Массивы
- •Многомерный массив
- •Массив объектов
- •Пользовательские процедуры и функции
- •Процедуры
- •Функции
- •Программный модуль
- •Объекты для работы с дисками
- •Редактор меню
- •Создание контекстного меню
- •Типы файлов
- •Текстовые файлы
- •Открытие файла
- •Закрытие файлов
- •Запись в файл
- •Чтение из файла
- •Объект Общий Диалог
- •Диалог Open/Save As
- •Мультимедийные приложения
Графические методы
Вспоминаем, что такое метод. Это одна из характеристик класса объектов VB. Метод – это некоторое действие, которое может выполнять VB над данным объектом.
Графический метод – это такой метод, который позволяет изображать на объекте данного класса какой-нибудь геометрический элемент. Графические методы применимы к объектам класса Экранная форма и Графическое окно (PictureBox).
Метод Cls – объект полностью очищается от всего, что было построено на нем с использованием графических методов или метода Print.
Picture1.Cls Form1.Cls
Упражнение1. На форме 2 кнопки. При нажатии на одну кнопку на форме печатается текстовая информация, при нажатии на вторую все стирается.
Метод Scale – c его помощью можно задать на данном объекте подходящую для задачи декартову систему координат. Объекты Form и PictureBox имеют абсолютные координаты – положение на экране и положение на экранной форме. Эти координаты измеряются в твипах. Это достаточно большие величины, как Вы помните, и пользоваться ими неудобно. VB позволяет задать новую систему координат, которая будет привязана к данному объекту.
[имя объекта.] Scale (x1,y1)-(x2,y2)
x1, y1 – новые координаты левого верхнего угла
x2, y2 – новые координаты правого нижнего угла
Если имя объекта отсутствует, то метод по умолчанию применяется экранной формой. Координаты могут быть и положительные и отрицательные.
Например:
frm2.Scale (0,0) – (200,100) - на форме с именем frm2 будет установлена система координат с началом в левом верхнем углу, размеры формы – 200 условных единиц по горизонтали и 100 по вертикали.
pct1.Scale (-10, 10)-(10,-10) – в графическом окне начало координат в центре, координаты Х и Y меняются от -10 до +10.
Упражнение2. Напишите командные строки, устанавливающие различные системы координат для Форм и Графических Окон. Сравните и проверьте друг у друга полученное.
Задание1. На форме расположены рисунок и кнопка. По каждому нажатию кнопки свойство Left рисунка увеличивается на 1. Сначала выполните программу при абсолютных координатах, а потом при помощи метода Scale установите новую систему координат ( ширина от 0 до 10) и сравните работу программы с предыдущей.
Вместо применения метода Scale можно воспользоваться начальной установкой значений свойств объекта из категории Scale. В Окне свойств можно работать в двух режимах Alphabetic (свойства расположены в алфавитном порядке) и Categorized (свойства расположены по категориям). Выберите сейчас Categorized и выберите раздел Scale. Свойства. Для работы в собственной системе координат надо сначала установить свойство ScaleMode = 0 (User), затем установить значения свойств ScaleWidth, ScaleHeight, ScaleLeft, ScaleTop (ширина, высота, левый верхний край объекта в новых координатах). Причем, если хотим, чтобы начало координат было в центре (как в математике), высота должна быть отрицательным числом.
Метод Pset – рисование точки.
[ Имя объекта.] Pset (x, y) [ ,Цвет ]
Имя объекта может отсутствовать (по умолчанию экранная форма). Цвет – выражение (число типа Long), которым в VB кодируется цвет, если цвет отсутствует, то по умолчанию он совпадает со свойством ForeColor объекта. Удобно в качестве цвета использовать константы VB.
Размер точки устанавливается при помощи свойства DrawWidth в окне свойств или в программе, например: Pict1.DrawWidth = 3.
Если метод Print применить после любого графического метода, то вывод символов будет в точке, чуть ниже и правее точки, в которой кончилось рисование.
Задание2. На форме нарисовать несколько точек различного размера и цвета. Около каждой точки подписать с помощью Print ее координаты.
Для создания интересных программ можно использовать событие перемещения мыши
Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Вспомним значения параметров этого события:
Button – целое число, сообщающее о том, какие кнопки мыши нажаты
Shift - целое число, сообщающее какие из клавиш на клавиатуре нажаты
Х –координата указателя мыши по горизонтали
Y - координата указателя мыши по вертикали
Задание3. Установите толщину рисования точки побольше. В событии MouseMove при нажатой левой клавише всегда должна рисоваться точка. Цвет точки определяется статической переменной, которая при каждом событии увеличивается. При нажатии на правую кнопку форма очищается.
Метод Line – позволяет чертить на объекте, к которому он применен, отрезки, закрашенные и незакрашенные прямоугольники.
[Имя объекта.] Line (x1,y1) – (x2,y2) [, Цвет [, Флаг]]
x1,y1 и x2,y2 – координаты начала и конца отрезка или координаты двух углов прямоугольника (противоположные вершины)
Цвет – аналогично как в Pset
Флаг - если отсутствует – это линия
если символ ‘B’ - это прямоугольник
если символ ‘BF’ - это закрашенный прямоугольник
При использовании символа ‘В’ можно менять свойство FillStyle для получения разного типа закраски прямоугольника.
Свойство FillColor – устанавливает цвет заливки фигуры. Но при этом свойство FillStyle должно быть = 0 (Solid).
Так же, как и в Pset, можно использовать свойство DrawWidth для изменения толщины линий.
Задание4. На форме начертите несколько отрезков разного цвета и толщины (вертикальный, горизонтальный, наклонный) и несколько прямоугольников разного типа закраски. Каждую фигуру надо подписать (например: 2 пр – к, 4 отрезок).
Графические методы можно применять для красочного динамического изображения графиков. Для этого необходимо изобразить координатные оси с помощью метода Line, обозначить наиболее важные точки, провести пунктиром контрольные линии. Для постепенного рисования использовать таймер. При каждом событии таймера координата Х увеличивается на небольшую величину, вычисляется для нее координата Y и рисуется точка (Х,Y).
Задание5. На объекте PictureBox установите новую систему координат. X и Y изменяются от –5 до 5, координата (0,0) в центре. С помощью инструмента Line нарисовать координатные оси. Расположение по центру установить в окне свойств. В программе должна быть нарисована в центре точка, отмечены точки ±Р/2, ±Р, ±3Р/2, ±2Р с надписями. На форме две кнопки sin и cos. По нажатию на кнопку рисуется соответствующий график.
Домашнее задание.
Дополнить предыдущую программу: рисование тангенса и котангенса, обозначить координатные оси буквами X,Y и стрелками. Около каждой нарисованной кривой должно появиться ее наименование. Обозначить пунктирами вспомогательные вертикали и горизонтали ( ±1 ).
На форме три Комбинированных Окна. В одном выбираются различные режимы свойства BorderStyle , во втором – FillStyle. Третье окно определяет цвет фигуры. Применить оператор SelectCase. По одной Командной кнопке рисуется линия, по другой прямоугольник, предварительно выбирается цвет, вид линий и заливка.
Контрольные вопросы:
Когда и зачем применяем метод Scale, к каким объектам?
Какие свойства и какого объекта надо менять, чтобы получить рисунки различного цвета, с различными типами заливки и различной толщиной?
Как подписать рисунок на форме (надпись в определенном месте).
Как очистить Форму и Графическое Окно?
Что определяет параметр Флаг в методе Line?
УРОК 16
Цель урока. Изучение графических методов Circle и Pset и графического элемента управления Shape. Научить студентов рисовать на компьютере с применением событий MouseUp и MouseDown.
Метод Circle – рисование окружностей, эллипсов, дуг, кругов и секторов круга.
[Имя объекта.] Circle (x,y), Радиус [, Цвет [, Угол1, Угол2 [, КоэффициентСжатия]]]
Обязательными параметрами в этом методе являются только:
x,y – координаты центра круга и радиус круга. Если не указаны остальные параметры, то рисуется полная окружность. Внутренняя заливка круга определяется установленными свойствами FillStyle и FillColor формы.
Угол1 и Угол2 – начальный или конечный углы дуги или сектора (измеряются в радианах). Если перед ненулевым значением угла стоит ‘-’, то рисуется не дуга, а сектор. При рисовании дуги или сектора движение «пера» происходит всегда против часовой стрелки от Угла1 до Угла2. При рисовании дуг целесообразно использовать константу ПИ = 3.14.
К
оэффициентСжатия
- положительное число,
если > 1 – рисуется эллипс, вытянутый по вертикали, КфСж =
если < 1 – вытянутый по горизонтали.
Если не указаны углы, то рисуется полный круг или эллипс.
При отсутствии каких-либо параметров, и если они не последние, надо обязательно обозначить их соответствующими запятыми.
Примеры:
1. Окружность красного цвета с радиусом=20:
Circle(100,100), 20,vbred.
2. Для рисования закрашенного круга можно применить точно такой же оператор, но предварительно изменив свойство
FillStyle
(
0)
в Окне Свойств или в программе.
3. Вертикальный эллипс: Circle(100,100), 20, , , , 2
(КфСж обязательно должен стоять после пятой запятой).
4
.
Горизонтальный эллипс: Circle(100,100),
20, , , , 0.4
(КфСж обязательно должен стоять после пятой запятой).
В VB применяется десятичная точка, а не запятая!!!
5.
Дуга
: Circle(100,100),
20, QBColor(8),0 ,3.14
6
.
Дуга
: p= 3.14 Circle(100,100),
20, QBColor (8),3*p/2,p/2
7.
Сектор:
Circle(100,100),
20, QBQolor(11), -0.001, -p/2
При рисовании секторов нельзя указывать параметр, равный 0, при необходимости надо поставить очень маленькое число.
Задание1. На форме начертите несколько фигур разного цвета и толщины и разного типа закраски (окружность, круг, эллипсы, дуги, сектора круга). В кругах и эллипсах обозначьте центр и подпишите его координаты.
Метод Point – считывает цвет пикселя. Этот метод, подобно функции, возвращает значение – число (типа Long), определяющий цвет точки с координатами x, y.
Цвет = Point(x,y)
В программе можно определить с помощью метода Point цвет, запомнить значение в контейнерной переменной и использовать
Задание2. Добавьте в предыдущее задание. По событию Form_MouseMove сначала определите цвет формы, используя аргументы события Х, Y и Button. При нажатой правой клавиши, передвигая мышку, запоминаете цвет в статической переменной, а при нажатой левой клавише, передвигая мышку, рисуете точку. Рекомендуется толщину рисования установить больше.
Метод Point удобно применять с использованием событий МouseDown и МouseUp