Шаг 11 - Изучаем CPaintDC

Создание проекта

Будем дальше работать с нашим проектом. Есть такая поговорка - родителей не выбирают. Но если папа миллионер это круто. Классу CPaintDC с папой очень повезло, папа CDC дал ему все, все что нужно, чтобы хорошо себя чувствовать в семье MFC.

Создаем код

Мы будем мучить OnPaint(), этой функции не повезло, и мы её задергаем, и Windows будет обращаться к ней часто. Я буду приводить примеры кода, вы их по очереди вставляйте и смотрите результат.

Вывести строку:

void CMainWnd::OnPaint()
{
	CPaintDC dc(this);
	dc.TextOut( 200, 200,"TextOut Samples");
}

Вывести точку, смотрите внимательно, ну маленькая она и чем выше разрешение экрана, тем меньше.

void CMainWnd::OnPaint()
{
	CPaintDC dc(this);
	dc.SetPixel(500,200,RGB(255,0,0));
}

Дуга окружности:

void CMainWnd::OnPaint()
{
	CPaintDC dc(this);
	dc.Arc(200,200,100,100,400,400,10,10);
}

Замкнутая дуга:

void CMainWnd::OnPaint()
{
	CPaintDC dc(this);
	dc.Chord(250,250,100,100,400,400,10,10);
}

Эллипс:

void CMainWnd::OnPaint()
{
	CPaintDC dc(this);
	dc.Ellipse(450,450,50,150);
}

Линия:

void CMainWnd::OnPaint()
{
	CPaintDC dc(this);
	dc.MoveTo(200,200);
	dc.LineTo(100,100);
}

Описание

Функций очень много, это естественно маленькая часть. Но она показывает принцип, что примитивов очень много. И CPaintDC умеет их выводить на контекст устройства.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 04.09.99 (обновлено 28.06.2001)