- •Содержание
- •Основные понятия ооп
- •Объекты
- •Классы объектов
- •Свойства
- •События
- •Инкапсуляция
- •Наследование
- •Полиморфизм (имеющий много форм)
- •Визуальное проектирование интерфейса
- •Процесс создания приложений
- •Структура проекта
- •Событийно-управляемое программирование наVb
- •Типы данных, константы и переменные
- •Типы данных
- •Особые значения
- •Переменные
- •Объявление переменных
- •Константы
- •Выражения, операторы, встроенные функции Выражения
- •Операторы
- •Операции и выражения
- •Встроенные функцииVb Математические функцииVb
- •Функции преобразования данныхVb
- •ФункцияInputBox
- •ФункцияMsgBox
- •Некоторые константы аргумента Кнопки
- •Ввод и вывод данных в vb
- •Ввод данных
- •Вывод результатов
- •Функция Format
- •Управляющие операторы
- •Основные логические операции
- •Таблицы истинности для основных логических операций:
- •Циклы с параметром
- •Циклы «Делать пока»
- •Массивы
- •Одномерные массивы
- •Многомерные массивы
- •ОператорOptionBase
- •ОператорErase
- •Ввод и вывод массивов Одномерные массивы
- •Двумерные массивы
- •Процедуры и функции Sub-процедуры
- •Событийные процедуры
- •Процедуры пользователя
- •Вызов процедур
- •Аргументы
- •Функции-процедуры
- •Данные символьного типа
- •Функция Split
- •Функция Join
- •Оператор Mid
- •Функции и операторы для работы с файлами
- •Открытие файлов
- •Закрытие файлов
- •Работа с файлами последовательного доступа
- •Чтение данных
- •Запись данных
- •Элемент управления CommonDialog
- •Графика в vb
- •Методы графики в vb
- •Задание цвета
- •Свойства объектов, влияющих на графические методы:
- •Применение метода Scale
- •Построение графика функции
- •Некоторые дополнительные элементы управления, которые часто используются в проектах.
- •Объект управленияProgressBar
- •Создание меню
- •Свойства
- •Работа с несколькими формами
Задание цвета
Параметр Цветво всех методах определяет цвет линии (точки). Если он не задан, то для рисования используется значение свойстваForeColor объекта-хозяина метода.
Для явногозадания значения цвета можно использовать:
VB-константу, задающую цвет
vbBlack
Черный
vbRed
Красный
vbGreen
Зеленый
vbYellow
Желтый
vbBlue
Синий
vbMagenta
Фиолетовый (неточный перевод)
vbCyan
Голубой (неточный перевод)
vbWhite
Белый
Функцию QBColor(n), гдеn- номер цвета, целое число от 0 то 15. Эта функция использует палитру из 16 цветов.
Число |
Цвет |
Число |
Цвет |
0 |
Black (черный) |
8 |
Gray (серый) |
1 |
Blue (голубой) |
9 |
Light Blue (светло-голубой) |
2 |
Green (зеленый) |
10 |
Light Green |
3 |
Cyan (бирюзовый) |
11 |
Light Cyan |
4 |
Red (красный) |
12 |
Light Red |
5 |
Magenta (малиновый) |
13 |
Light Magenta |
6 |
Yellow (желтый) |
14 |
Light Yellow |
7 |
White (белый) |
15 |
Bright White |
Функцию RGB(n1,n2,n3). Эта функция использует палитру из 256 цветов. Параметрn1- целое число от 0 до 255, представляет красную компоненту цвета. Параметрn2- целое число от 0 до 255, представляет зеленую компоненту цвета. Параметрn3- целое число от 0 до 255, представляет голубую компоненту цвета.
Значение RGB-цвета определяет относительную интенсивность красного, зеленого и голубого цвета для получения необходимого цвета, который будет отображаться на экране. Чем меньше положить каждой краски, тем темнее цвет получится. Если значение некоторого цвета больше 255, то он заменяется на 255.
Например, для стандартных цветов будут такие значения – RGB-компонент:
Цвет |
Red-значение |
Green-значение |
Blue-значение |
Black (черный) |
0 |
0 |
0 |
Blue (голубой) |
0 |
0 |
255 |
Green (зеленый) |
0 |
255 |
0 |
Cyan(бирюзовый) |
0 |
255 |
255 |
Red(красный) |
2550 |
0 |
0 |
Magenta(малиновый) |
255 |
0 |
255 |
Yellow (желтый) |
255 |
255 |
0 |
White (белый) |
255 |
255 |
255 |
Свойства объектов, влияющих на графические методы:
Свойство |
Смысл |
DrawWidth |
Толщина линии |
ForeColor |
Цвет линии |
DrawStyle |
Стиль линии: 1 - Solid(сплошная), 2 –Dash(штрих-пунктирная), 3 –Dot(пунктирная) и т.п. Задается при толщине линий 1. |
Fillstyle |
Стиль (узор) заливки и будет ли заливка |
FillColor |
Цвет заливки |
AutoRedraw |
Определяет, будут ли автоматически восстанавливаться графика и напечатанный текст, случайно стертые из-за того, что объект скрылся из виду |
DrawMode |
Способ наложения краски. По умолчанию значение равно 13, когда краска плотно накладывается и предыдущая картинка через нее не просвечивает. |
Управлять толщиной, цветом и другими атрибутами фигур можно следующим образом:
Настроить соответствующие свойства объекта в режиме проектирования. Эти свойства будут воздействовать сразу на все методы.
Задать изменение этих свойств в режиме работы программы. Бьет предыдущий.
Задать многие атрибуты рисуемой фигуры можно в самом методе. Бьет оба предыдущих.
Пример задания стилей, толщины и цвета рисуемых линий
Private Sub Command1_Click() 'точка и окружность - тонкие, черные PSet (300, 1000) Circle (1000, 1000), 500 'изменение толщины линий DrawWidth = 20 'изменение цвета линий ForeColor = RGB(230, 250, 100) 'точка и окружность - толстые и цветные PSet (1800, 1000) Circle (2800, 1000), 500 End Sub | |
Private Sub Command1_Click() 'линия - тонкая, сплошная, черная Line (300, 500)-(4700, 500) 'изменение цвета линий ForeColor = RGB(230, 250, 100) 'изменение стиля линий DrawStyle = 2 'линия-тонкая, пунктирная, желтая Line (300, 1000)-(4700, 1000) 'изменение толщины линий DrawWidth = 20 'линия-толстая, сплошная, красная Line (300,1500)-(4700,1500),vbRed End Sub |
Пример закраски замкнутых фигур
Private Sub Command1_Click() 'прямоугольник окантован черной линией Line (300, 500)-(4700, 1000),,B 'изменение цвета линий ForeColor = RGB(230, 250, 100) 'прямоугольник залит желтым цветом Line (300, 1500)-(4700, 2000),,BF 'изменение цвета заливки FillColor = vbGreen 'задание стиля заливки FillStyle = 7 Line (300, 2500)-(4700, 3000),, B End Sub |
Пример. Нарисовать «трубу» с помощью метода Circle в графическом окне размером 5000 х 3000.
Private Sub Command1_Click() Dim x As Integer x = 500 Do Until x > 4450 Picture1.Circle(x,1500),500,RGB(255,0,0) x = x + 50 Loop End Sub | |
Private Sub Command1_Click() Dim x As Integer Picture1.Cls x = 500 y = 2500 Do Until x > 4450 Picture1.Circle (x, y),500,RGB(255,0,0) x = x + 50 y = y – 25 ’х умножить на 2/2 For i = 1 To 100000 Next Loop End Sub |
Пример. Нарисовать «компакт-диск» или «летающую тарелку». Радиус самого маленького круга взять 500, самого большого – во все графическое окно, радиусы соседних окружностей различаются на 10 – 30 твипов, цвет – желтый, коэффициент сжатия окружности взять меньше 1 – получится эллипс, сжатый по вертикали. Внутреннюю и внешнюю обводку сделать другого цвета.
Private Sub Command1_Click() Dim r As Integer Picture1.Cls x = 2500 y = 1500 r = 500 Do Until r > 1500 Picture1.Circle(x,y),r,RGB(255,255,0),,,0.4 r = r + 30 For i = 1 To 100000 Next Loop End Sub | |
Private Sub Command1_Click() Dim r As Integer Picture1.Cls x = 2500 y = 1500 r = 500 Picture1.ForeColor = RGB(155, 155, 0) Do Until r > 1470 Picture1.Circle (x, y),r,,,,0.4 r = r + 30 For i = 1 To 100000 Next Picture1.ForeColor = RGB(255, 255, 0) Loop Picture1.Circle(x,y),1500,RGB(155,155,0),,, 0.4 End Sub |
Пример. Разлиновать графическое окно в клетку.
Private Sub Command1_Click() Picture1.Cls X1 = 500 Y1 = 0 X2 = 500 Y2 = 3000 Do Until X2 > 4500 Picture1.Line (X1, Y1)-(X2, Y2), vbWhite X2 = X2 + 500 X1 = X2 Loop X1 = 0 Y1 = 500 X2 = 5000 Y2 = 500 Do Until Y2 > 2500 Picture1.Line (X1, Y1)-(X2, Y2), vbWhite Y2 = Y2 + 500 Y1 = Y2 Loop End Sub |