Основы программирования. Лабораторная работа №7

Содержание

Слайд 2

https://www.frolov-lib.ru/books/bsp/v14/ch2_3.htm

https://www.frolov-lib.ru/books/bsp/v14/ch2_3.htm

Слайд 3

https://www.frolov-lib.ru/books/bsp/v14/ch2_3.htm

https://www.frolov-lib.ru/books/bsp/v14/ch2_3.htm

Слайд 4

https://www.frolov-lib.ru/books/bsp/v14/ch2_3.htm

https://www.frolov-lib.ru/books/bsp/v14/ch2_3.htm

Слайд 5

Такое разное перо

case WM_PAINT: {
PAINTSTRUCT ps;
HDC hdc = BeginPaint(hWnd,

Такое разное перо case WM_PAINT: { PAINTSTRUCT ps; HDC hdc = BeginPaint(hWnd,
&ps);
HPEN hPen;
hPen = CreatePen(PS_SOLID, 2, RGB(255, 0, 0));
SelectObject(hdc, hPen);
MoveToEx(hdc, 10, 10, NULL);
LineTo(hdc, 10, 110);
hPen = CreatePen(PS_SOLID, 5, RGB(255, 128, 0));
SelectObject(hdc, hPen);
LineTo(hdc, 110, 60);
hPen = CreatePen(PS_SOLID, 10, RGB(255, 128, 128));
SelectObject(hdc, hPen);
LineTo(hdc, 10, 10);

Слайд 6

Такое разное перо (2)

hPen = CreatePen(PS_DASH, 1, RGB(255, 0, 0));
SelectObject(hdc, hPen);
MoveToEx(hdc, 110,

Такое разное перо (2) hPen = CreatePen(PS_DASH, 1, RGB(255, 0, 0)); SelectObject(hdc,
10, NULL);
LineTo(hdc, 110, 110);
hPen = CreatePen(PS_DOT, 1, RGB(0, 255, 0));
SelectObject(hdc, hPen);
LineTo(hdc, 160, 60);
hPen = CreatePen(PS_DASHDOTDOT, 1, RGB(0, 0, 255));
SelectObject(hdc, hPen);
LineTo(hdc, 110, 10);
DeleteObject(hPen);
EndPaint(hWnd, &ps);
}

Слайд 7

Кисть и FillRect

case WM_PAINT: {
PAINTSTRUCT ps;
HDC hdc = BeginPaint(hWnd,

Кисть и FillRect case WM_PAINT: { PAINTSTRUCT ps; HDC hdc = BeginPaint(hWnd,
&ps);
HBRUSH hBrush;
hBrush = CreateSolidBrush(RGB(0, 0, 255));
SelectObject(hdc, hBrush);
RECT rect = { 10, 3, 100, 130 };
FillRect(hdc, &rect, hBrush);
// СЛЕДУЮЩИЙ КОД ВСТАВИТЬ СЮДА!!!
EndPaint(hWnd, &ps);
}

Слайд 8

Кисть (2)

hBrush = CreateHatchBrush(HS_HORIZONTAL, RGB(0, 0, 255));
SelectObject(hdc, hBrush);
RECT rect2 = {

Кисть (2) hBrush = CreateHatchBrush(HS_HORIZONTAL, RGB(0, 0, 255)); SelectObject(hdc, hBrush); RECT rect2
50, 50, 120, 120 };
FillRect(hdc, &rect2, hBrush);

Слайд 9

Кисть (3)

hBrush = CreateHatchBrush(HS_CROSS, RGB(128, 0, 128));
SelectObject(hdc, hBrush);
HPEN hPen;
hPen = CreatePen(PS_SOLID, 5,

Кисть (3) hBrush = CreateHatchBrush(HS_CROSS, RGB(128, 0, 128)); SelectObject(hdc, hBrush); HPEN hPen;
RGB(128, 0, 128));
SelectObject(hdc, hPen);
Ellipse( hdc, 70, 10, 170, 100);
DeleteObject(hBrush);

Слайд 10

Задача 1

Нарисовать автомобиль
Использовать 3 разных кисти.
В рисунке есть 2 круга.

Задача 1 Нарисовать автомобиль Использовать 3 разных кисти. В рисунке есть 2 круга.

Слайд 11

Задача 1

Нарисовать автомобиль
Использовать 3 разных кисти.
В рисунке есть 2 круга.

Задача 1 Нарисовать автомобиль Использовать 3 разных кисти. В рисунке есть 2 круга.

Слайд 12

Задача 1

Нарисовать автомобиль
Использовать 3 разных кисти.
В рисунке есть 2 круга.

Задача 1 Нарисовать автомобиль Использовать 3 разных кисти. В рисунке есть 2 круга.

Слайд 13

Задача 2

Нарисовать снежную бабу.
В рисунке должно быть 3 закрашенных эллипса.
В качестве носа

Задача 2 Нарисовать снежную бабу. В рисунке должно быть 3 закрашенных эллипса.
– морковка.
Глаза. Рот. Руки.

Слайд 14

Источники информации

Графический интерфейс GDI в Microsoft Windows (Александр Фролов, Григорий Фролов Том 4,

Источники информации Графический интерфейс GDI в Microsoft Windows (Александр Фролов, Григорий Фролов
М.: Диалог-МИФИ, 1993)
https://www.frolov-lib.ru/books/bsp/v14/ch2_3.htm
КАК рисовать в Win32 API? -http://radiofront.narod.ru/htm/prog/htm/winda/api/paint.html

Слайд 15

Домашнее задание

К картине, созданной в ходе лабораторных работ 5 и 6,

Домашнее задание К картине, созданной в ходе лабораторных работ 5 и 6,
добавить рисунок транспортного средства с колесами.
Добавить сооружение, растение, или что-угодно иное, содержащее закрашенные прямоугольники. Нужно использовать максимальное количество разных кистей и перьев.