Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Обучение VC++ / VC++Баженова / Приложение.doc
Скачиваний:
36
Добавлен:
16.02.2016
Размер:
7.5 Mб
Скачать

Virtual void Serialize(cArchive& ar);

//}}AFX_VIRTUAL // Implementation public:

virtual ~CCONTDoc(); #ifdef_DEBUG

virtual void AssertValid() const; // Только для отладочной конфигурации

virtual void Dump(CDumpContext& dc) const; #endif

protected:

// Generated message map functions

protected:

//{{AFX_MSG(CCONTDoc)

// NOTE - the ClassWizard will add and remove member functions here. // DO NOT EDIT what you see in these blocks of generated code ! //}}AFX_MSG DECLARE_MESSAGE_MAP()

};

IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIHII

//{{AFX_INSERT_LOCATION}}

// Developer Studio will insert additional declarations immediately before the previous line.

Листинг файла CONTDoc.cpp

#include "stdafx.h"

«include "CONT.h"

«include "CONTDoc.h"

«include "Cntrltem.h"

#ifdef_DEBUG

«define new DEBUG_NEW

#undefTHIS_FILE

static char THIS_FILE[] = _FILE_;

«endif ■

Illllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll

II CCONTDoc

Implement_dyncreate(ccontDoc, cOleDocument)

BEGIN_MESSAGE_MAP(CCONTDoc, COleDocument)

//{{AFX_MSG_MAP(CCONTDoc)

// NOTE - the ClassWizard will add and remove mapping macros here. // DO NOT EDIT what you see in these blocks of generated code! //}}AFX_MSG_MAP

II Реализация OLE-контейнера по умолчанию ON_UPDATE_COMMAND_UI(ID_EDIT_PASTE,

COIeDocument::OnUpdatePasteMenu) ON_UPDATE_COMMAND_UI(ID_EDIT_PASTE_LINK,

COleDocument: :OnUpdatePasteLinkMenu) ON_UPDATE_COMMAND_UI(ID_OLE_EDIT_CONVERT,

COleDocument::OnUpdateObjectVerbMenu)

ON_COMMAND(ID_OLE_EDIT_CONVERT, C01eDocument::OnEditConvert) ON_UPDATE_COMMAND_UI(ID_OLE_EDIT_LINKS,

COleDocument::OnUpdateEditIinksMenu)

ON_COMMAND(ID_OLE_EDIT_LINKS>COleDocument::OnEditUnks) ON_UPDATE_COMMAND_UI(ID_OLE_VERB_FIRST,

COleDocuraent::OnUpdateObjectVerbMenu)

END_MESSAGE_MAP()

Illllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll CCONTDoc::CCONTDoc() // Конструктор { // Use OLE compound files

EnableCompoundFileO;

// TODO: add one-time construction code here }

CCONTDoc::~CCONTDoc() // Деструктор { }

BOOL CCONTDoc::OnNewDocument() // Обработчик сообщения {

if (!COleDocument::OnNewDocument()) return FALSE;

// TODO: add reinitialization code here

// (SDI documents will reuse this document)

return TRUE; }

Illllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll

II CCONTDoc serialization

void CCONTDoc::Serialize(CArchive& ar)

{ if (ar.IsStoringO)

{ // TODO: add storing code here

}

else

{ // TODO: add loading code here

}

// Calling the base class COIeDocument enables serialization

// of the container document's COleClientltem objects.

COleDocument::SeriaIize(ar); }

Illllllllllllllllllllllllllllllilllllllllllllllllllllllllllllllllllllllllllll

II CCONTDoc diagnostics

#ifdef_DEBUG

void CCONTDoc::AssertValid() const

{ C01eDocument::AssertValid();}

void CCONTDoc::Dump(CDumpContext& dc) const

{ COleDocument::Dump(dc);} N

#endif//_DEBUG

Illllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll II CCONTDoc commands

Листинг файла CONTView.h

class CCONTCntrltem;

class CCONTView : public Cview

{

protected: // create from serialization only

CCONTView();

DECLARE_DYNCREATE(CCONTView) // Attributes public:

CCONTDoc* GetDocumentQ;

// m_pSelection holds the selection to the current CCONTCntrltem.

// For many applications, such a member variable isn't adequate to

// represent a selection, such as a multiple selection or a selection

// of objects that are not CCONTCntrltem objects. This selection

// mechanism is provided just to help you get started. -

// TODO: replace this selection mechanism with one appropriate to your app.

CCONTCntrltem* m_pSelection; // Operations public: // Overrides

// ClassWizard generated virtual function overrides

//{{AFX_VIRTUAL(CCONTView)

public:

virtual void OnDraw(CDC* pDC); // overridden to draw this view

virtual BOOL PreCreateWindow(CREATESTRUCT& cs);

protected:

virtual void OnInitialUpdate(); // called first time after construct

virtual BOOL OnPreparePrinting(CPrintInfo* plnfo);

virtual void OnBeginPrinting(CDC* pDC, CPrintlnfo* plnfo);

virtual void OnEndPrinting(CDC* pDC, CPrintlnfo* plnfo);

virtual BOOL bSdected(const CObject* pDocItem) const;// Container support

//}}AFX_VIRTUAL // Implementation public:

virtual ~CCONTView(); #ifdef_DEBUG

virtual void AssertValidO const; // Только для отладочной конфигурации

virtual void Dump(CDumpContext& dc) const; #endif protected:

// Generated message map functions protected:

//{{AFX_MSG(CCONTView)

// NOTE - the ClassWizard will add and remove member functions here. // DO NOT EDIT what you see in these blocks of generated code !

afx_msg void OnDestroyO;

afx_msg void OnSetFocus(CWnd* pOldWnd);

afx_msg void OnSize(UINT nType, int ex, int cy); afx_msg void OnInsertObject(); afx_msg void OnCancelEditCntr(); //}}AFX_MSG DECLARE_MESSAGE_MAP()

};

#ifndef _DEBUG // debug version in CONTView.cpp inline CCONTDoc* CCONTView::GetDocument()

{return (CCONTDoc*)m_pDocument;} #endif

Illllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll

//{{AFX_INSERT_LOCATION}}

// Developer Studio will insert additional declarations immediately before the previous line.

Листинг файла CONTView.cpp

#include "stdafx.h" #include "CONT.h" «include "CONTDoc.h" #include "Cntrltem.h" «include "CONTView.h"

#ifdef_DEBUG

«define new DEBUG_NEW

#undefTHIS_FILE

static char THIS_FILE[] • _FILE_;

#endif

IIIIIIIIIIIIIIIIIIIIUIIIIIIIIIIIIIIIIIIIIIIUIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII

II CCONTView IMPLEMENT_DYNCREATE(CCONTView, CView)

BEGIN_MESSAGE_MAP(CCONTView, CView)

//{{AFX_MSG_MAP(CCONTView)

// NOTE - the ClassWizard will add and remove mapping macros here.

// DO NOT EDIT what you see in these blocks of generated code! ON_WM_DESTROY() ON_WM_SETFOCUS() ON_WM_SIZE()

ON_COMMAND(ID_OLE_INSERT_NEW, OnlnsertObject) ON_COMMAND(ID_CANCEL_EDIT_CNTR, OnCancelEditCntr) //}}AFX_MSG_MAP // Standard printing commands

ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint) ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint) ON_COMMAND(IDlFILE_PRINT_PREVIEW, CView::OnFilePrintPreview) END_MESSAGE_MAP()

IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIHII II CCONTView construction/destruction CCONTView::CCONTView() // Конструктор { m_pSelection = NULL;

// TODO: add construction code here

}

CCONTView::~CCONTView() // Деструктор

{ } BOOL CCONTView::PreCreateWindow(CREATESTRUCT& cs)

{

// TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs return CView::PreCreateWindow(cs);

}

Illllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll

II CCONTView drawing

Соседние файлы в папке VC++Баженова