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

 

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

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

Янг Майкл Дж. Visual С++ 6. Полное руководство: В 2 т.(том1) — Бином, 2006. — 569 c.
Скачать (прямая ссылка): vicualcc2006t1.djvu
Предыдущая << 1 .. 102 103 104 105 106 107 < 108 > 109 110 111 112 113 114 .. 204 >> Следующая

virtual void DoDataExchange(CDataExchange* pDX); // поддержка
// DDX/DDV-функций
//})AFX_VIRTUAL
// Реализация protected:
//{{AFX_MSG(CAboutDlg)
// Обработчики сообщений отсутствуют
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) 1
//({AFX_DATA_INIT(CAboutDlg) //))AFX_DATA_INIT
)
void CAboutDlg::DoDataExchange(CDataExchange* pDX) (
CDialog::DoDataExchange(pDX); //((AFX_DATA_MAP(CAboutDlg) //}}AFX_DATA_MAP
)
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{(AFX_MSG_MAP(CAboutDlg)
// Обработчики сообщений отсутствуют
//})AFX_MSG_MAP END_MES SAGE_MAP()
// Функция отображения диалогового окна
void CMiniDrawApp::OnAppAbout()
{
CAboutDlg aboutDlg; aboutDlg.DoModal();
)
/////////////////////////////////////////////////////////////// // Другие функции класса CMiniDrawApp
Листинг 11.3
// MiniDrawDoc.h : интерфейс класса CMiniDrawDoc
III 11111II/!/III l/l 11111/I/1 l/ll l/l III I Ш/l I l/l IIIIII/II П/l/l ¦if !defined(
AFX__MINIDRAWDOC_H_11E8392A_999A_11D1_80FC_00C0F6A83B7F_INCLUDED_)
¦define
AFX_MINIDRAWDOC_H_11E8392A_999A_11D1_80FC_OOCOF6A83B7F_INCLUDED_
¦if MSC VER > 1000
tpragma once
fendif // _MSC_VER > 1000
class CLine : public CObject {
protected:
int m_Xl, m_Yl, m_X2, m_Y2;
public:
CLine (int XI, int Yl, int X2, int Y2) {
m XI = XI
m ~Y1 = Yl
m X2 = X2
m ~Y2 = Y2
)
void Draw (CDC *PDC};
);
class CMiniDrawDoc : public CDocument {
protected:
CTypedPtrArray<CObArray, CLine*> m_LineArray; public:
void AddLine (int XI, int Yl, int X2, int Y2); CLine *GetLine (int Index); int GetNumLines ();
protected:
// используются при сериализации CMiniDrawDoc();
DECLARE_DYNCREATE(CMiniDrawDoc)
// Атрибуты public:
// Операции public:
// Переопределения
// Переопределения виртуальных функций, сгенерированные
// мастером ClassWizard
//{{AFX_VIRTUAL(CMiniDrawDoc)
public:
virtual BOOL OnNewDocument(); virtual void Serialize(CArchiveS ar); virtual void DeleteContents(); //)}AFX_VIRTUAL
// Реализация public:
virtual ~CMiniDrawDoc() ; #ifdef DEBUG
virtual void AssertValidO const; virtual void Dump(CDumpContextS dc) const; #endif
protected:
// Сгенерированные обработчики сообщений protected:
//{(AFX_MSG(CMiniDrawDoc)
afx_msg void OnEditClearAll();
afx_msg void OnUpdateEditClearAll(CCmdUI* pCmdUI); afxjnsg void OnEditUndo();
afx_msg void OnUpdateEditUndo(CCmdUI* pCmdUI);
//}}AFX_MSG
DEC LARE_ME S SAGE_MAP()
};
///////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Visual С++ вставит дополнительные
// объявления сразу за предыдущей строкой
#endif
// !defined(
// AFX_MINIDRAWDOC_H_11E8392A_999A_11D1_80FC_00C0F6A83B7F_INCLUDED_)
Листинг 11.4
// MiniDrawDoc.cpp : реализация класса CMiniDrawDoc //
linclude "stdafx.h" #include "MiniDraw.h"
tinclude "MiniDrawDoc.h"
#ifdef _DEBUG tdefine new DEBUG_NEW #undef THIS_FILE
static char THIS_FILE[] = _FILE_;
#endif
/////////////////////////////////////////////////////////////// // Класс CMiniDrawDoc
IMPLEMENT_DYNCREATE(CMiniDrawDoc, CDocument)
BEGIN_MESSAGE_MAP(CMiniDrawDoc, CDocument) //{(AFX_MSG_MAP(CMiniDrawDoc)
ON_COMMAND(ID_EDIT__CLEAR_ALL, OnEditClearAll)
0N_UPDATE_COMMAND_UI(ID_EDIT_CLEAR_ALL, OnUpdateEditClearAll) ON_COMMAND(ID_EDIT_UNDO, OnEditUndo)
ON_UPDATE_COMMAND_UI(ID_EDIT_UNDO, OnUpdateEditUndo) //}}AFX_MSG_MAP END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////// // Конструктор/деструктор класса CMiniDrawDoc CMiniDrawDoc: .-CMiniDrawDoc ()
{
// TODO: Здесь добавьте код конструктора
}
CMiniDrawDoc::-CMiniDrawDoc()
{
}
BOOL CMiniDrawDoc::OnNewDocument() {
if (!CDocument::OnNewDocument()) return FALSE;
// TODO: Здесь добавьте код повторной инициализации
// (SDI-приложения будут повторно использовать этот документ)
return TRUE;
)
/////////////////////////////////////////////////////////////// // Сериализация класса CMiniDrawDoc
void CMiniDrawDoc::Serialize(CArchiveS ar) {
if (ar.IsStoring ()) (
// TODO: Здесь добавьте код сохранения
)
else
{
// TODO: Здесь добавьте код загрузки
)
)
/////////////////////////////////////////////////////////////// // Диагностика класса CMiniDrawDoc
#ifdef _DEBUG
void CMiniDrawDoc::AssertValid() const {
CDocument::AssertValid(};
)
void CMiniDrawDoc::Dump(CDumpContextS dc) const {
CDocument: : Dump (dc) ;
)
#endif //_DEBuG
ni in hihihi hihihi и шпини ni ni in шипит и
11 Другие функции класса CMiniDrawDoc
void CLine::Draw (CDC *PDC) (
PDC->MoveTo (m_Xl, m_Yl); PDC->LineTo (m_X2, m_Y2); }
void CMiniDrawDoc::AddLine (int XI, int Yl, int X2, int Y2) (
CLine *PLine = new CLine (XI, Yl, X2, Y2);
m_LineArray.Add (PLine);
)
CLine *CMiniDrawDoc::GetLine (int Index) (
if (Index < 0 M Index > m_LineArray.GetUpperBound ())
return 0; return m_LineArray.GetAt (Index); }
int CMiniDrawDoc::GetNumLines () (
return m_LineArray.GetSize (); )
void CMiniDrawDoc: :DeleteContents() {
// TODO: Здесь добавьте собственный код // и/или вызов базового класса
Предыдущая << 1 .. 102 103 104 105 106 107 < 108 > 109 110 111 112 113 114 .. 204 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100