http://tikitak.narod.ru ---- Главная страница сайта
Шаг 82 - Тренировка приложение PR6
Потренируемся в создании приложения с предварительным просмотром. Для закрепления пройденого материала в предыдущем шаге.
Запускаем VC++ и MFC AppWizard. Имя проекту дайте PrintPreview. На первом шаге поставьте только Single Document. На втором и третьем ничего не трогаем, а на шаге четыре оставьте активной только опцию Print and Print Priview. И можно нажимать Finish.
Как известно функции рисования графики должны распологаться в функции OnDraw класса вида. Класс вида у нас CPrintPreviewView. Вот она.
void CPrintPreviewView::OnDraw(CDC* pDC)
{
CPrintPreviewDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
}
Нам нужно её изменить установив единицы устройства и добавив функции рисования. Итак, добавим только функцию рисования.
void CPrintPreviewView::OnDraw(CDC* pDC)
{
CPrintPreviewDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
pDC->Rectangle(20,20,220,220);
}
Запустите и скомпилируйте приложение. Посмотрите пункт меню PrintPreview и Вы увидите, что Ваш прямоугольник появился и в окне предварительного просмотра.
Для того чтобы привести к нормальным единицам нам опять прийдеться изменить функцию OnDraw
void CPrintPreviewView::OnDraw(CDC* pDC)
{
CPrintPreviewDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
pDC->SetMapMode(MM_LOENGLISH);
pDC->Rectangle(20,-20,220,-220);
}
Вот теперь мы можем гарантировать, что размер изображения на принтере будет 2 дюйма. 200/100 = 2 :-)
Загрузить проект | Предыдущий Шаг | Следующий Шаг | Оглавление By Artem.
Используются технологии uCoz
|