⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gmcadview.cpp

📁 《Visual C++.NET MFC类库应用详解》程序实例
💻 CPP
📖 第 1 页 / 共 5 页
字号:
	dc.MoveTo(60,132);
	dc.LineTo(210,132);        
	dc.MoveTo(60,132);
	dc.LineTo(60,162); 
	dc.MoveTo(142,60);
	dc.LineTo(210,60); 
	dc.MoveTo(182,60);
	dc.LineTo(182,82);
	dc.MoveTo(182,99);
	dc.LineTo(182,130);
	dc.MoveTo(182,60);   // H的两个箭头
	dc.LineTo(178,65);
	dc.MoveTo(182,60);
	dc.LineTo(186,65);
	dc.MoveTo(182,130);
	dc.LineTo(178,125);
	dc.MoveTo(182,130);
	dc.LineTo(186,125);

	dc.MoveTo(63,150);
	dc.LineTo(100,150);
	dc.MoveTo(61,150);
	dc.LineTo(66,146);	
	dc.MoveTo(61,150);
	dc.LineTo(66,154);	
    
	dc.TextOut(178,85,"H");
	dc.TextOut(102,142,"D");

	dc.MoveTo(95,80);
	dc.LineTo(115,105);
	dc.MoveTo(95,80);
	dc.LineTo(95,85);	
	dc.MoveTo(95,80);
	dc.LineTo(100,81);	
	dc.TextOut(115,105,"R");

  dc.SelectObject(pOldPen);

}

void CGMCADView::OnH2() 
{
	// TODO: Add your control notification handler code here
    m_XianXing=XIANXING_H2;

	m_HHEdit.EnableWindow(TRUE);
    m_DDEdit.EnableWindow(TRUE);
	m_RREdit.EnableWindow(TRUE);
	m_HHStatic.EnableWindow(TRUE);
    m_DDStatic.EnableWindow(TRUE);
	m_RRStatic.EnableWindow(TRUE);

    m_RPEdit.EnableWindow(FALSE);
	m_RR2Edit.EnableWindow(FALSE);
    m_RP2Edit.EnableWindow(FALSE);
	m_HH1Edit.EnableWindow(FALSE);
    m_HH2Edit.EnableWindow(FALSE);
	m_RR2Static.EnableWindow(FALSE);
	m_HH1Static.EnableWindow(FALSE);
    m_HH2Static.EnableWindow(FALSE);

    m_TipStatic.SetWindowText("请输入高度H、直径D、直径D1。");
    m_HHStatic.SetWindowText("高度H:");
    m_DDStatic.SetWindowText("直径D:");
    m_RRStatic.SetWindowText("直径D1:");

    CClientDC dc(this);
    dc.SetTextColor(RGB(0,255,0));
    CBrush NewBrush,*pOldBrush;
	NewBrush.CreateSolidBrush(RGB(0,0,0));
	pOldBrush=dc.SelectObject(&NewBrush);
    dc.Rectangle(&m_ParaShowArea);
	dc.SelectObject(pOldBrush);

    dc.SetBkMode(TRANSPARENT);
	CPen RedPen,GreenPen,*pOldPen,*temppen;
	RedPen.CreatePen(PS_SOLID,1,RGB(255,0,0));
	pOldPen=dc.SelectObject(&RedPen);
	dc.Arc(85,45,195,155,120,50,100,125);

	GreenPen.CreatePen(PS_SOLID,1,RGB(0,255,0));
	temppen=dc.SelectObject(&GreenPen);
	dc.MoveTo(95,128);
	dc.LineTo(200,128);        
	dc.MoveTo(120,48);
	dc.LineTo(200,48);
	
	dc.MoveTo(182,48);
	dc.LineTo(182,83);
	dc.MoveTo(182,96);
	dc.LineTo(182,128);
	dc.MoveTo(182,48);   // H的两个箭头
	dc.LineTo(178,53);
	dc.MoveTo(182,48);
	dc.LineTo(186,53);
	dc.MoveTo(182,128);
	dc.LineTo(178,123);
	dc.MoveTo(182,128);
	dc.LineTo(186,123);

	dc.MoveTo(95,128);
	dc.LineTo(95,155);
	dc.MoveTo(96,145);
	dc.LineTo(125,145);
	dc.MoveTo(95,145);
	dc.LineTo(101,140);	
	dc.MoveTo(95,145);
	dc.LineTo(101,149);	
    
	dc.TextOut(178,82,"H");
	dc.TextOut(127,138,"D");

	dc.MoveTo(83,90);
	dc.LineTo(83,170);
	dc.MoveTo(83,160);
	dc.LineTo(110,160);	
	dc.MoveTo(83,160);
	dc.LineTo(88,156);	
	dc.MoveTo(83,160);
	dc.LineTo(88,164);	
	dc.TextOut(115,160,"D1");

  dc.SelectObject(pOldPen);

}

void CGMCADView::OnXh() 
{
	// TODO: Add your control notification handler code here
    m_XianXing=XIANXING_XH;

	m_HHEdit.EnableWindow(TRUE);
    m_DDEdit.EnableWindow(TRUE);
	m_RREdit.EnableWindow(TRUE);
    m_RPEdit.EnableWindow(TRUE);
	m_HH1Edit.EnableWindow(TRUE);
	m_HHStatic.EnableWindow(TRUE);
    m_DDStatic.EnableWindow(TRUE);
	m_RRStatic.EnableWindow(TRUE);
    m_HH1Static.EnableWindow(TRUE);

	m_RR2Edit.EnableWindow(FALSE);
    m_RP2Edit.EnableWindow(FALSE);
    m_HH2Edit.EnableWindow(FALSE);
    m_RR2Static.EnableWindow(FALSE);
    m_HH2Static.EnableWindow(FALSE);

    m_TipStatic.SetWindowText("请输入高度H、直径D、半径R及弧特性、高度H1。");
    m_HHStatic.SetWindowText("高度H:");
    m_DDStatic.SetWindowText("直径D:");
    m_RRStatic.SetWindowText("半径R:");
    m_HH1Static.SetWindowText("高度H1:");


    CClientDC dc(this);
    dc.SetTextColor(RGB(0,255,0));
    CBrush NewBrush,*pOldBrush;
	NewBrush.CreateSolidBrush(RGB(0,0,0));
	pOldBrush=dc.SelectObject(&NewBrush);
    dc.Rectangle(&m_ParaShowArea);
	dc.SelectObject(pOldBrush);

    dc.SetBkMode(TRANSPARENT);
	CPen RedPen,YellowPen,GreenPen,*pOldPen,*temppen;
	YellowPen.CreatePen(PS_SOLID,1,RGB(255,255,0));
	temppen=dc.SelectObject(&YellowPen);
	dc.MoveTo(130,45);
	dc.LineTo(98,80);
	RedPen.CreatePen(PS_SOLID,1,RGB(255,0,0));
	pOldPen=dc.SelectObject(&RedPen);
	dc.Arc(80,55,230,205,98,80,82,120);

	GreenPen.CreatePen(PS_SOLID,1,RGB(0,255,0));
	temppen=dc.SelectObject(&GreenPen);

    dc.MoveTo(130,45);
    dc.LineTo(170,45);
    dc.MoveTo(82,120);
    dc.LineTo(190,120);
    dc.MoveTo(160,45);
    dc.LineTo(160,78);
    dc.MoveTo(160,90);
    dc.LineTo(160,120);
    dc.MoveTo(160,45);
    dc.LineTo(156,50);
    dc.MoveTo(160,45);
    dc.LineTo(164,50);
    dc.MoveTo(160,120);
    dc.LineTo(156,115);
    dc.MoveTo(160,120);
    dc.LineTo(164,115);
	dc.TextOut(156,78,"H");

    dc.MoveTo(80,120);
    dc.LineTo(80,150);
    dc.MoveTo(80,140);
    dc.LineTo(110,140);
    dc.MoveTo(80,140);
    dc.LineTo(85,136);
    dc.MoveTo(80,140);
    dc.LineTo(85,144);
	dc.TextOut(111,133,"D");

    dc.MoveTo(155,130);
	dc.LineTo(87,96);
    dc.MoveTo(87,96);
	dc.LineTo(91,102);
    dc.MoveTo(87,96);
	dc.LineTo(93,94);
	dc.TextOut(120,98,"R");

    dc.MoveTo(150,130);
	dc.LineTo(190,130);
    dc.MoveTo(155,125);
	dc.LineTo(155,135);
    dc.MoveTo(180,130);
	dc.LineTo(180,120);
    dc.MoveTo(180,120);
	dc.LineTo(177,124);
    dc.MoveTo(180,120);
	dc.LineTo(183,124);
    dc.MoveTo(180,130);
	dc.LineTo(177,126);
    dc.MoveTo(180,130);
	dc.LineTo(183,126);
	dc.TextOut(188,120,"H1");

}
	
void CGMCADView::OnHx() 
{
	// TODO: Add your control notification handler code here
    m_XianXing=XIANXING_HX;

	m_HHEdit.EnableWindow(TRUE);
    m_DDEdit.EnableWindow(TRUE);
	m_RREdit.EnableWindow(TRUE);
    m_RPEdit.EnableWindow(TRUE);
	m_HH1Edit.EnableWindow(TRUE);
	m_HHStatic.EnableWindow(TRUE);
    m_DDStatic.EnableWindow(TRUE);
	m_RRStatic.EnableWindow(TRUE);
    m_HH1Static.EnableWindow(TRUE);

	m_RR2Edit.EnableWindow(FALSE);
    m_RP2Edit.EnableWindow(FALSE);
    m_HH2Edit.EnableWindow(FALSE);
    m_RR2Static.EnableWindow(FALSE);
    m_HH2Static.EnableWindow(FALSE);

    m_TipStatic.SetWindowText("请输入高度H、直径D、半径R及弧特性、高度H1。");
    m_HHStatic.SetWindowText("高度H:");
    m_DDStatic.SetWindowText("直径D:");
    m_RRStatic.SetWindowText("半径R:");
    m_HH1Static.SetWindowText("高度H1:");


    CClientDC dc(this);
    dc.SetTextColor(RGB(0,255,0));
    CBrush NewBrush,*pOldBrush;
	NewBrush.CreateSolidBrush(RGB(0,0,0));
	pOldBrush=dc.SelectObject(&NewBrush);
    dc.Rectangle(&m_ParaShowArea);
	dc.SelectObject(pOldBrush);

    dc.SetBkMode(TRANSPARENT);
	CPen RedPen,YellowPen,GreenPen,*pOldPen,*temppen;
	YellowPen.CreatePen(PS_SOLID,1,RGB(255,255,0));
	temppen=dc.SelectObject(&YellowPen);
	dc.Arc(165-75,110-75,165+75,110+75,130,45,98,80);

	RedPen.CreatePen(PS_SOLID,1,RGB(255,0,0));
	pOldPen=dc.SelectObject(&RedPen);
	dc.MoveTo(95,81);
	dc.LineTo(82,120);
	GreenPen.CreatePen(PS_SOLID,1,RGB(0,255,0));
	temppen=dc.SelectObject(&GreenPen);

    dc.MoveTo(130,44);
    dc.LineTo(200,44);
    dc.MoveTo(82,120);
    dc.LineTo(200,120);
    dc.MoveTo(190,44);
    dc.LineTo(190,78);
    dc.MoveTo(190,90);
    dc.LineTo(190,120);
    dc.MoveTo(190,44);
    dc.LineTo(186,50);
    dc.MoveTo(190,44);
    dc.LineTo(194,50);
    dc.MoveTo(190,120);
    dc.LineTo(186,115);
    dc.MoveTo(190,120);
    dc.LineTo(194,115);
	dc.TextOut(186,78,"H");

    dc.MoveTo(82,120);
    dc.LineTo(82,150);
    dc.MoveTo(82,140);
    dc.LineTo(110,140);
    dc.MoveTo(82,140);
    dc.LineTo(87,136);
    dc.MoveTo(82,140);
    dc.LineTo(87,144);
	dc.TextOut(111,133,"D");

    dc.MoveTo(150,100);
	dc.LineTo(106,62);

    dc.MoveTo(106,62);
	dc.LineTo(109,67);
    dc.MoveTo(106,62);
	dc.LineTo(111,61);
	dc.TextOut(120,58,"R");

    dc.MoveTo(150,100);
	dc.LineTo(180,100);
    dc.MoveTo(155,95);
	dc.LineTo(155,105);

    dc.MoveTo(165,100);
	dc.LineTo(165,120);
    dc.MoveTo(165,100);
	dc.LineTo(162,104);
    dc.MoveTo(165,100);
	dc.LineTo(168,104);
    dc.MoveTo(165,120);
	dc.LineTo(162,116);
    dc.MoveTo(165,120);
	dc.LineTo(168,116);
	dc.TextOut(171,102,"H1");

}

void CGMCADView::OnHh0() 
{
	// TODO: Add your control notification handler code here
    m_XianXing=XIANXING_HH;
    m_TipStatic.SetWindowText("请输入高度H、直径D、半径R1和R2及其弧特性、高度H1或高度H2。其中,弧向内特性为+,弧向外特性为-;高在线上为-,高在线下为+。");

	m_HHEdit.EnableWindow(TRUE);
    m_DDEdit.EnableWindow(TRUE);
	m_RREdit.EnableWindow(TRUE);
    m_RPEdit.EnableWindow(TRUE);
	m_RR2Edit.EnableWindow(TRUE);
    m_RP2Edit.EnableWindow(TRUE);
	m_HH1Edit.EnableWindow(TRUE);
    m_HH2Edit.EnableWindow(TRUE);

	m_HHStatic.EnableWindow(TRUE);
    m_DDStatic.EnableWindow(TRUE);
	m_RRStatic.EnableWindow(TRUE);
	m_RR2Static.EnableWindow(TRUE);
	m_HH1Static.EnableWindow(TRUE);
    m_HH2Static.EnableWindow(TRUE);

    m_HHStatic.SetWindowText("高度H:");
    m_DDStatic.SetWindowText("直径D:");
    m_RRStatic.SetWindowText("半径R1:");
    m_RR2Static.SetWindowText("半径R2:");
    m_HH1Static.SetWindowText("高度H1:");
    m_HH2Static.SetWindowText("高度H2:");


    CClientDC dc(this);
    dc.SetTextColor(RGB(0,255,0));
    CBrush NewBrush,*pOldBrush;
	NewBrush.CreateSolidBrush(RGB(0,0,0));
	pOldBrush=dc.SelectObject(&NewBrush);
    dc.Rectangle(&m_ParaShowArea);
	dc.SelectObject(pOldBrush);

    dc.SetBkMode(TRANSPARENT);
	CPen RedPen,YellowPen,GreenPen,*pOldPen,*temppen;
	YellowPen.CreatePen(PS_SOLID,1,RGB(255,255,0));
	temppen=dc.SelectObject(&YellowPen);
	dc.Arc(47,0,143,96,100,92,140,62);
	RedPen.CreatePen(PS_SOLID,1,RGB(255,0,0));
	pOldPen=dc.SelectObject(&RedPen);
	dc.Arc(69,90,181,202,98,92,90,130);

	GreenPen.CreatePen(PS_SOLID,1,RGB(0,255,0));
	temppen=dc.SelectObject(&GreenPen);

    dc.MoveTo(80,62);
    dc.LineTo(190,62);
    dc.MoveTo(75,122);
    dc.LineTo(190,122);

    dc.MoveTo(180,62);
    dc.LineTo(180,78);
    dc.MoveTo(180,90);
    dc.LineTo(180,122);

    dc.MoveTo(180,62);
    dc.LineTo(176,67);
    dc.MoveTo(180,62);
    dc.LineTo(184,67);
    dc.MoveTo(180,122);
    dc.LineTo(176,117);
    dc.MoveTo(180,122);
    dc.LineTo(184,117);
	dc.TextOut(176,78,"H");

    dc.MoveTo(74,122);
    dc.LineTo(74,150);
    dc.MoveTo(74,140);
    dc.LineTo(105,140);
    dc.MoveTo(74,140);
    dc.LineTo(80,136);
    dc.MoveTo(74,140);
    dc.LineTo(80,144);
	dc.TextOut(106,133,"D");

    dc.MoveTo(127,145);
	dc.LineTo(86,104);
    dc.MoveTo(86,104);
	dc.LineTo(86,109);
    dc.MoveTo(86,104);
	dc.LineTo(91,104);
	dc.TextOut(110,117,"R2");

    dc.MoveTo(122,145);
	dc.LineTo(170,145);
    dc.MoveTo(127,140);
	dc.LineTo(127,150);

    dc.MoveTo(145,145);
	dc.LineTo(145,122);
    dc.MoveTo(145,122);
	dc.LineTo(142,127);
    dc.MoveTo(145,122);
	dc.LineTo(148,127);
    dc.MoveTo(145,145);
	dc.LineTo(142,140);
    dc.MoveTo(145,145);
	dc.LineTo(148,140);
	dc.TextOut(148,128,"H2");

    dc.MoveTo(95,48);
	dc.LineTo(130,80);
    dc.MoveTo(130,80);
	dc.LineTo(124,80);
    dc.MoveTo(130,80);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -