Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Янг Майкл Дж. -> "Visual С++ 6. Полное руководство: В 2 т.(том1)" -> 177

Visual С++ 6. Полное руководство: В 2 т.(том1) - Янг Майкл Дж.

Янг Майкл Дж. Visual С++ 6. Полное руководство: В 2 т.(том1) — Бином, 2006. — 569 c.
Скачать (прямая ссылка): vicualcc2006t1.djvu
Предыдущая << 1 .. 171 172 173 174 175 176 < 177 > 178 179 180 181 182 183 .. 204 >> Следующая

#include "stdafx.h" #include "TabD.emo.h"
finclude "TabDemoDoc.h" #include "TabDemoView.h"
#ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE
static char THIS_FILE[] = _FILE_;
#endif
11111111111111111111111111111111111111111111111 /11111111111111111 ii Класс CTabDemoView
IMPLEMENT_DYNCREATE(CTabDemoView, CView)
BEGIN_MESSAGE_MAP(CTabDemoView, CView) //{{AFX_MSG_MAP(CTabDemoView)
// ПРИМЕЧАНИЕ - Мастер ClassWizard будет добавлять и удалять
// здесь макросы обработки сообщений
// НЕ РЕДАКТИРУЙТЕ текст в этих блоках сгенерированного кода! //}}АЕХ_МЗС_МАР ЕКО_МЕЗЗАСЕ_МАР()
/11 /11111111111111 /1111111111111111111111111111111111111111111111 ii Конструктор/деструктор класса СТаЬ0етоУ1ею
СТаЬ0етоУ1е1^: : СТаЬ0епкЛ/1е1^ () (
// ТСЮО: Здесь добавьте код конструктора
CTabDemoView::-CTabDemoView()
{
}
BOOL CTabDemoView::PreCreateWindow(CREATESTRUCT& es) f
// TODO: Здесь модифицируйте класс окна или стиль окна, // изменяя поля структуры CS
return CView::PreCreateWindow(es) ;
}
111111111111111111111111111111111111111111111111111111111111111 /1 i7 Отображение окна класса CTabDemoView
void CTabDemoView: .-OnDraw (CDC* pDC) {
CTabDemoDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc);
// TODO: Здесь добавьте код для отображения собственных данных
RECT ClientRect;
CFont Font;
LOGFONT LF;
int LineHeight;
CFont *Ptr01dFont;
int X, Y;
// заполнение структуры LF свойствами стандартного // системного шрифта: CFont TempFont;
if (pDoc->m_Pitch == PITCH_VARIABLE)
TempFont.CreateStockObject (SYSTEM_FONT); else
TempFont.CreateStockObject (SYSTEM_FIXED_FONT); TempFont.GetObject (sizeof (LOGFONT), &LF);
// настройка полей lfWeight, IfItalic и lfUnderline: if (pDoc->m_Bold)
LF.lfWeight = FW_BOLD; if (pDoc->m_Italic)
LF.IfItalic = 1; if (pDoc->m_Underline)
LF.lfUnderline = 1;
// создание и выбор шрифта: Font.CreateFontlndirect (&LF); PtrOldFont = pDC->SelectObject (SFont);
// задание выравнивания: GetClientRect (&ClientRect); switch (pDoc->m_Justify) {
case JUSTIFY_LE FT:
pDC->SetTextAlign (TA_LEFT);
X = ClientRect.left + 5;
break; case JUSTIFY_CENTER:
pDC->SetTextAlign (TA_CENTER);
X = ClientRect.right / 2;
break; case JUSTIFY_RIGHT:
pDC->SetTextAlign (TA_RIGHT) ;
X = ClientRect.right - 5;
break;
}
// установка цвета текста и режима отображения фона: pDC->SetTextColor (::GetSysColor (COLOR_WINDOWTEXT)); pDC->SetBkMode (TRANSPARENT);
// вывод строк текста:
LineHeight = LF.lfHeight * pDoc->m_Spacing;
Y = 5;
pDC->TextOut (X, Y, "This is the first line of sample text.");
Y += LineHeight;
pDC->TextOut (X, Y, "This is the second line of sample text.");
Y += LineHeight;
pDC->TextOut (X, Y, "This is the third line of sample text.");
// отмените выбор шрифта: pDC->SelectObject (PtrOldFont);
)
11111111111111111111111111111111111111111111111111111111111111111 ii Диагностика класса CTabDemoView
#ifdef _DEBUG
void CTabDemoView::AssertValid() const {
CView::AssertValid ();
}
void CTabDemoView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}
CTabDemoDoc* CTabDemoView::GetDocument() // неотладочная версия
// является встроенной
{
ASSERT{m_pDocument->IsKindOf(RUNTIME_CLAS S(CTabDemoDoc))); return (CTabDemoDoc*)m_pDocument;
I
#endif //_DEBUG
///////////////////////////////////////////////////////////////// // Обработчики сообщений класса CTabDemoView
Листинг 15.19
// Justify.h : файл заголовков //
#if !defined(
AFX_JUSTIFY_H_60ECFFD5_A12D_llDl_80FC_OOCOF6A83B7F_INCLUDED_)
#def ine
AFX_JUSTIFY_H_60ECFFD5_A12D_11D1_80FC_00C0F6A83B7F_INCLUDED
#if _MSC_VER > 1000 Ipragma once
#endif // _MSC_VER > 1000
111111111111111111111111 f 111111 f 11111111111111111111/1 f 11 f 1111111 // Диалоговое окно класса CJustify
class CJustify : public CPropertyPage {
DECLARE_DYNCREATE(CJustify)
// Конструктор public:
CJustify() ;
-CJustify() ;
// Данные диалогового окна //{{AFX_DATA(СJus t i fу) enum { IDD = IDD_DIALOG2 }; int m_Justify;
//})AFX_DATA
// Переопределения
// Переопределения виртуальных функций, сгенерированные // мастером ClassWizard //((AFX_VIRTUAL(CJustify)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // поддержка
// DDX/DDV-функций
//) )AFX_VIRTUAL
// Реализация protected:
// Сгенерированные обработчики сообщений //{{AFX_MSG(СJustifу)
// ПРИМЕЧАНИЕ - Мастер ClassWizard будет добавлять
// здесь функции-члены класса
//};AFX_MSG DECLARE MESSAGE МАР()
//{(AFX_INSERT_LOCATION}}
/'/ Visual С++ вставит дополнительные объявления // сразу перед предыдущей строкой
#endif
// 'defined)
// AFX_jnSTIFY_H__60ECFFD5_A12D_11D1_80FC_00C0F6A83B"7F___INCLUDED^)
Листинг 15.20
// Justify.cpp : Файл реализации
#incmae "stdafx.h" #include "TabDemo.h" #include "Justify.h"
#ifdef _DEBUG fdefine new DEBCJG_NEW #undef THIS__FILE
static char THIS_FILE[] = __FILE__;
#endif
1111111111111111111111II11111 III 11111/111/1i111II111/111111IIП11 lI Страница свойств класса CJustify
IMPLEMENT_DYNCREATE(CJustify, CPropertyPage)
CJustify::CJustifyI) : CPropertyPage(CJustify::IDD) (
Предыдущая << 1 .. 171 172 173 174 175 176 < 177 > 178 179 180 181 182 183 .. 204 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100