编写一个单文档界面应用程序,该程序在用户区能以在两个矩形的相交矩形为外接矩形画一个椭圆。

编写一个单文档界面应用程序,

该程序在用户区能以在两个矩形的相交矩形为外接矩形画一个椭

圆。

编写一个单文档界面应用程序,该程序在用户区能以在两个矩形的相交矩形为外接矩形画一个椭圆


1,建立一个名字为MFCexp5_7的单文档


2,首先在View里声明两个CRect类型的变量 

public:

CRect m_Rect1 ,  m_Rect2;


3,在View类里的构造函数初始化两个矩形,当然数值有你自己定义

CMy5_7View::CMy5_7View() : m_Rect1( 50 , 50 , 400 , 400 ) , m_Rect2( 200 , 200 , 800 , 400 )
{
// TODO: add construction code here

}


4,在View类的OnDraw函数里添加必要的代码:

void CMy5_7View::OnDraw(CDC* pDC)
{
CMy5_7Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here

/////这一段是我为了熟悉画刷的使用,不是必要的
CBrush newBrush( RGB(0,0,0) );
pDC->SelectObject( &newBrush );
pDC->Rectangle( m_Rect1 );
CBrush newBrush2( RGB(255,255,255) );
pDC->SelectObject( &newBrush2 );
pDC->Rectangle( m_Rect2 );

////////////////////////////////////////////////////////////////////////////////////////
int T,L,R,B;
if( m_Rect1.left < m_Rect2.left )
L = m_Rect2.left;
else
L = m_Rect1.left;
if( m_Rect1.right < m_Rect2.right )
R = m_Rect1.right;
else
R = m_Rect2.right;
if( m_Rect1.top < m_Rect2.top )
T = m_Rect2.top;
else
T = m_Rect1.top;
if( m_Rect1.bottom < m_Rect2.bottom )
B = m_Rect1.bottom;
else
B = m_Rect2.bottom;
CBrush newBrush1( RGB( 250 ,0 , 0) );
pDC->SelectObject( &newBrush1 );
pDC->Ellipse( L,T,R,B );
}

该程序在用户区能以在两个矩形的相交矩形为外接矩形画一个椭

圆。

编写一个单文档界面应用程序,

该程序在用户区能以在两个矩形的相交矩形为外接矩形画一个椭

圆。

你可能感兴趣的:(编写一个单文档界面应用程序,该程序在用户区能以在两个矩形的相交矩形为外接矩形画一个椭圆。)