91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

1.可以繪制線段,矩形,圓,多邊形 2.可以平移這些區(qū)域 3.繪制完成后,可以用鼠標選中頂點并隨鼠標移動而修改頂點. 4.矩形使用了橡皮框,多邊形頂點的修改自定義類 效率不錯,不卡,不閃. vc6,vs2008或以上都可以運行. 源代碼很詳細和規(guī)則,相信不讓你后悔給分:)

資源截圖

代碼片段和文件信息

//?cntritem.h?:?interface?of?the?CDrawItem?class
//
//?This?is?a?part?of?the?Microsoft?Foundation?Classes?C++?library.
//?Copyright?(C)?1992-1998?Microsoft?Corporation
//?All?rights?reserved.
//
//?This?source?code?is?only?intended?as?a?supplement?to?the
//?Microsoft?Foundation?Classes?Reference?and?related
//?electronic?documentation?provided?with?the?library.
//?See?these?sources?for?detailed?information?regarding?the
//?Microsoft?Foundation?Classes?product.

#include?“stdafx.h“
#include?“drawcli.h“

#include?“drawdoc.h“
#include?“drawobj.h“
#include?“drawvw.h“
#include?“cntritem.h“

#ifdef?_DEBUG
#undef?THIS_FILE
static?char?baseD_CODE?THIS_FILE[]?=?__FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
//?CDrawItem?implementation

IMPLEMENT_SERIAL(CDrawItem?COleClientItem?0)

CDrawItem::CDrawItem(CDrawDoc*?pContainer?CDrawOleObj*?pDrawObj)
:?COleClientItem(pContainer)
{
m_pDrawObj?=?pDrawObj;
}

CDrawItem::~CDrawItem()
{
if?(m_pDrawObj?!=?NULL)
m_pDrawObj->m_pClientItem?=?NULL;
}

void?CDrawItem::onchange(OLE_NOTIFICATION?nCode?DWORD?dwParam)
{
ASSERT_VALID(this);

COleClientItem::onchange(nCode?dwParam);

switch(nCode)
{
case?OLE_CHANGED_STATE:
case?OLE_CHANGED_ASPECT:
m_pDrawObj->Invalidate();
break;
case?OLE_CHANGED:
UpdateExtent();?//?extent?may?have?changed
m_pDrawObj->Invalidate();
break;
}
}

BOOL?CDrawItem::onchangeItemPosition(const?CRect&?rectPos)
{
ASSERT_VALID(this);

CDrawView*?pView?=?GetActiveView();
ASSERT_VALID(pView);
CRect?rect?=?rectPos;
pView->ClientToDoc(rect);

if?(rect?!=?m_pDrawObj->m_position)
{
//?invalidate?old?rectangle
m_pDrawObj->Invalidate();

//?update?to?new?rectangle
m_pDrawObj->m_position?=?rect;
GetExtent(&m_pDrawObj->m_extent);

//?and?invalidate?new?rectangle
m_pDrawObj->Invalidate();

//?mark?document?as?dirty
GetDocument()->SetModifiedFlag();
}
return?COleClientItem::onchangeItemPosition(rectPos);
}

void?CDrawItem::OnGetItemPosition(CRect&?rPosition)
{
ASSERT_VALID(this);

//?update?to?extent?of?item?if?m_position?is?not?initialized
if?(m_pDrawObj->m_position.IsRectEmpty())
UpdateExtent();

//?copy?m_position?which?is?in?document?coordinates
CDrawView*?pView?=?GetActiveView();
ASSERT_VALID(pView);
rPosition?=?m_pDrawObj->m_position;
pView->DocToClient(rPosition);
}

void?CDrawItem::Serialize(CArchive&?ar)
{
ASSERT_VALID(this);

//?Call?base?class?first?to?read?in?COleClientItem?data.
//?Note:?this?sets?up?the?m_pDocument?pointer?returned?from
//??CDrawItem::GetDocument?therefore?it?is?a?good?idea
//??to?call?the?base?class?Serialize?first.
COleClientItem::Serialize(ar);

//?now?store/retrieve?data?specific?to?CDrawItem
if?(ar.IsStoring())
{
//?TODO:?add?storing?code?here
}
else
{
//?TODO:?add?loading?code?here
}
}

BOOL?CDrawItem::UpdateExtent()
{
CSize?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????1784??1998-03-27?01:49??cntritem.h

?????文件???????6947??1998-03-27?01:49??drawcli.clw

?????文件???????4830??1998-03-27?01:49??drawcli.cpp

?????文件???????8476??1998-03-27?01:49??drawcli.dsp

?????文件????????537??1998-03-27?01:49??drawcli.dsw

?????文件???????1316??1998-03-27?01:49??drawcli.h

?????文件??????14358??1998-03-27?01:49??drawcli.mak

?????文件?????115712??2013-04-21?23:06??drawcli.ncb

?????文件???????2793??2013-04-21?23:01??drawcli.plg

?????文件??????22791??1998-03-27?01:49??drawcli.rc

?????文件???????7859??1998-03-27?01:49??drawdoc.cpp

?????文件???????1866??1998-03-27?01:49??drawdoc.h

?????文件??????22286??1998-03-27?01:49??drawobj.cpp

?????文件???????4678??1998-03-27?01:49??drawobj.h

?????文件??????11102??1998-03-27?01:49??drawtool.cpp

?????文件???????2939??1998-03-27?01:49??drawtool.h

?????文件??????32420??1998-03-27?01:49??drawvw.cpp

?????文件???????5910??1998-03-27?01:49??drawvw.h

?????文件???????2741??1998-03-27?01:49??mainfrm.cpp

?????文件???????1290??1998-03-27?01:49??mainfrm.h

?????文件????????742??1998-03-27?01:49??makefile

?????文件??????39822??1998-03-27?01:49??propset.cpp

?????文件???????5524??1998-03-27?01:49??propset.h

?????文件???????6339??1998-03-27?01:50??readme.txt

?????文件???????1585??1998-03-27?01:50??rectdlg.cpp

?????文件???????1170??1998-03-27?01:50??rectdlg.h

?????文件???????2830??1998-03-27?01:50??resource.h

?????文件?????????21??1998-03-27?01:50??setup.lst

?????文件??????17960??1998-03-27?01:50??setup.rul

?????文件???????1405??1998-03-27?01:50??splitfrm.cpp

............此處省略23個文件信息

評論

共有 條評論

相關資源