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

📄 chap37.htm

📁 经典的C入门教程,想学习VC的朋友们可以看一下
💻 HTM
字号:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>CPolyline类别定义及实作 画随意线的类别</title>
<link rel="stylesheet" href="../../../include/style.css">
</head>

<body>
<font SIZE="2">

<p><small><a href="../../../index.htm">首页</a> &gt;&gt; <a href="../../program.htm">程序设计</a> 
  &gt;&gt; <a href="../cbuilder.htm">C++ Builder</a>&nbsp; &gt;&gt;&nbsp; </small><font>具体而微的绘图程式</font>&middot;CPolyline类别定义及实作 
  画随意线的类别</p>

<p align="left"><!--webbot bot="ImageMap" rectangle="(40,1) (71, 23)  chap38.htm" rectangle="(4,1) (36, 23)  chap36.htm" src="../ch1/NextBack.gif" width="69" height="24" alt="NextBack.gif (743字节)" border="0" startspan --><MAP NAME="FrontPageMap"><AREA SHAPE="RECT" COORDS="40, 1, 71, 23" HREF="chap38.htm"><AREA SHAPE="RECT" COORDS="4, 1, 36, 23" HREF="chap36.htm"></MAP><a href="../../../_vti_bin/shtml.exe/program/C++/ch3/chap37.htm/map"><img ismap usemap="#FrontPageMap" border="0" height="24" alt="NextBack.gif (743字节)" src="../ch1/NextBack.gif" width="69"></a><!--webbot bot="ImageMap" endspan i-checksum="23662" --></p>
</font>

<p align="left"><font color="#FF0000" SIZE="2">&middot;03-03 CPolyline类别定义及实作 
画随意线的类别</font></p>
<font SIZE="2">

<p>class CPolyline : public CShape</p>

<p>{</p>

<p>&nbsp;&nbsp;&nbsp; public:</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; POINT m_ptOrigin;</p>

<p>&nbsp;&nbsp; public:</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CPolyline(TCanvas* pCanvas):CShape(pCanvas) 
{}</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; virtual ~CPolyline() {}</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; virtual void OnMouseMove(int,int);</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; virtual void OnMouseDown(int,int);</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; virtual void OnMouseUp(int,int);</p>

<p>};</p>

<p>CPolyline类别其实和我们前面所写的涂鸦程式的行为模式极为类似,所以我就简单带过好了。</p>

<p>void CPolyline::OnMouseDown(int x,int y)</p>

<p>{</p>

<p>&nbsp;&nbsp;&nbsp; m_ptOrigin.x = x;</p>

<p>&nbsp;&nbsp;&nbsp; m_ptOrigin.y = y;</p>

<p>&nbsp;&nbsp;&nbsp; m_pCanvas-&gt;MoveTo(x,y);</p>

<p>}</p>

<p>void CPolyline::OnMouseMove(int x,int y)</p>

<p>{</p>

<p>&nbsp;&nbsp;&nbsp; m_pCanvas-&gt;LineTo(x,y);</p>

<p>}</p>

<p>void CPolyline::OnMouseUp(int x,int y)</p>

<p>{</p>

<p>&nbsp;&nbsp;&nbsp; m_pCanvas-&gt;LineTo(x,y);</p>

<p>}</p>

</font><p><font SIZE="2"></font><font color="#FF0000" SIZE="2">&middot;03-04 CPolygon类别定义及实作 
画多边形的类别</font></p><font SIZE="2">

<p>class CPolygon : public CPolyline</p>

<p>{</p>

<p>&nbsp;&nbsp;&nbsp; public:</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CPolygon(TCanvas* 
pCanvas):CPolyline(pCanvas){}</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; virtual ~CPolygon() {}</p>

<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; virtual void OnMouseUp(int,int);</p>

<p>};</p>

<p>CPolygon是CPolyline的子类别,其差别仅在於它会将首尾两点连接,使其成为一个多边形,因此我们就直接由CPolyline继承而来,只改写其OnMouseUp成员函式即可。</p>

<p>void CPolygon::OnMouseUp(int x,int y)</p>

<p>{</p>

<p>&nbsp;&nbsp;&nbsp; m_pCanvas-&gt;MoveTo(m_ptOrigin.x,m_ptOrigin.y);</p>

<p>&nbsp;&nbsp;&nbsp; m_pCanvas-&gt;LineTo(x,y);</p>

<p>}</p>
</font>

<p align="right"><font SIZE="2"><!--webbot bot="ImageMap" rectangle="(40,1) (71, 23)  chap38.htm" rectangle="(4,1) (36, 23)  chap36.htm" src="../ch1/NextBack.gif" width="72" height="24" alt="NextBack.gif (743字节)" border="0" startspan --><MAP NAME="FrontPageMap1"><AREA SHAPE="RECT" COORDS="40, 1, 71, 23" HREF="chap38.htm"><AREA SHAPE="RECT" COORDS="4, 1, 36, 23" HREF="chap36.htm"></MAP><a href="../../../_vti_bin/shtml.exe/program/C++/ch3/chap37.htm/map1"><img ismap usemap="#FrontPageMap1" border="0" height="24" alt="NextBack.gif (743字节)" src="../ch1/NextBack.gif" width="72"></a><!--webbot bot="ImageMap" endspan i-checksum="42109" --></font></p>
<font SIZE="2">

<p><small><a href="../../../index.htm">首页</a> &gt;&gt; <a href="../../program.htm">程序设计</a> 
  &gt;&gt; <a href="../cbuilder.htm">C++ Builder</a>&nbsp; &gt;&gt;&nbsp; </small><font>具体而微的绘图程式</font>&middot;CPolyline类别定义及实作 
  画随意线的类别</p>
</font>
</body>
</html>

⌨️ 快捷键说明

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