?? chap26.htm
字號:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>繪圖工具</title>
<link rel="stylesheet" href="../../../include/style.css">
</head>
<body>
<font SIZE="2">
<p><small><a href="../../../index.htm">首頁</a> >> <a href="../../program.htm">程序設計</a>
>> <a href="../cbuilder.htm">C++ Builder</a> >> </small>圖形程式設計基本觀念·繪圖工具</p>
<p align="left"><!--webbot bot="ImageMap" rectangle=" (40,1) (71, 23) chap27.htm" rectangle=" (4,1) (36, 23) chap25.htm" src="../ch1/NextBack.gif" width="72" height="24" alt="NextBack.gif (743字節)" border="0" startspan --><MAP NAME="FrontPageMap"><AREA SHAPE="RECT" COORDS="40, 1, 71, 23" HREF="chap27.htm"><AREA SHAPE="RECT" COORDS="4, 1, 36, 23" HREF="chap25.htm"></MAP><a href="../../../_vti_bin/shtml.exe/program/C++/ch2/chap26.htm/map"><img ismap usemap="#FrontPageMap" border="0" height="24" alt="NextBack.gif (743字節)" src="../ch1/NextBack.gif" width="72"></a><!--webbot bot="ImageMap" endspan i-checksum="23224" --></p>
</font>
<p><font SIZE="2" color="#FF0000">·繪圖工具</font></p>
<font SIZE="2">
<p>現在開始,我要為你一一介紹在TCanvas所使用的繪圖工具。首先為你介紹的是TPen性質。在往下進行之前,我先簡單說明C++
Builder的命名慣例,在C++Builder中,對於資料型別或是物件類別一般是以大寫T
為啟始字元,而對於物件本身則以不包含大寫T的名稱為名,如TCanvas及TPen為類別名,而Canvas及Pen則是實際的物件,在本書中我會依情況交互使用之。</p>
<p> </p>
<p>TPen是你在Canvas畫線所使用的”筆”,因此所有和線條有關的繪圖函式都會受TPen影響,如LineTo,Ellipse,Polygon,PolyLine,Rectangle等函式都使用”筆”來畫線,基本上我們可以將這些繪圖工具歸類為向量式的繪圖工具,所有的向量式繪圖工具都使用Pen來進行畫線的動作。</p>
<p> </p>
<p>你可以利用Canvas.Pen來存取Pen ,藉此修改Pen的性質,這些性質包含Color,Width,Style,以及
Mode。你可以修改上述性質來達到改變線條顏色及樣式的目的。</p>
<p> </p>
<p>XX-04-01 Color性質</p>
<p> </p>
<p>Color性質可以定出筆的顏色。在C++ Builder中提供了許多顏色的預定常數,這些預設顏色都以cl(cl代表color)為啟始字元命名。例如clRed代表紅色,,clBlue代表藍色,clGreen代表綠色等等。另外C++
Builder也將Windows的基本顏色以常數定義,如clWindow及clMenu分別代表Window及Menu的顏色。以下我列出部份C++
Builder定義的顏色常數,你不必完全記住它,只要有些印象即可,若是無法記住,可以直接使用線上輔助說明,不過記住一些常用的常數會加快你程式寫作的效率。</p>
<p> </p>
<p>顏色常數說明</p>
</font>
<table CELLSPACING="0" BORDER="0" CELLPADDING="1" WIDTH="468">
<tr>
<td VALIGN="TOP"><font SIZE="2">值 意義</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clBlack 黑色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clMaroon 茶色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clGreen 綠色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clOlive 橄欖綠</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clNavy 海藍色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clPurple 紫色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clTeal 青紫色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clGray 灰色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clSilver 銀色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clRed 紅色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clLime 灰綠色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clBlue 藍色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clFuchsia </font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clAqua 淡綠青色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clWhite 白色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clBackground Window背景色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clActiveCaption 活動視窗的標題色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clInactiveCaption 非活動視窗的標題色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clMenu Menu的顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clWindow Windows的背景色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clWindowFrame Window Frame</font><font LANG="ZH-TW" SIZE="2">的顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clMenuText Menu文字的顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clWindowText Window內文字的顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clCaptionText 標題文字的顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clActiveBorder 活動視窗的邊界顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clInactiveBorder 非活動視窗的邊界顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clAppWorkSpace 視窗工作區域的顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clHighlight 高亮度Windows顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clHightlightText 被選取文字的顏</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clBtnFace Button顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clBtnShadow Button影子顏色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clGrayText 灰色文字色</font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clBtnText Button內文字顏 </font></td>
</tr>
<tr>
<td VALIGN="TOP"><font SIZE="2">clBtnHighlight Button高亮度顏色</font></td>
</tr>
</table>
<font SIZE="2">
<p> </p>
<p>以下的程式會將畫筆的顏色設為藍色</p>
<p>Canvas->Pen->Color=clBlue;</p>
<p> </p>
<p>另外我們也可以利用以下的敘述來改變顏色</p>
<p> </p>
<p>Canvas->Pen->Color = TColor(RGB(192,192,192));</p>
<p> </p>
<p>注:RGB是Windows系統用以表示顏色的方式,它們分別代表紅色(Red)、綠色(Green)及藍色(Blue)。使用RGB時我們可以傳入分別代表紅、綠、藍叁種顏色的強度值,此時它會傳回Windows系統的對應值。例如RGB(255,0,0)
的傳回值是代表紅色,所以Tcolor(RGB(255,0,0)) 所代表的意義和clRed是相同的。你也可以利用ColorToRGB來將clRed等C++
Builder定義的常數值傳換成Windows系統所代表的RGB顏色。</p>
<p> </p>
<p>XX-04-02 Style性質</p>
<p> </p>
<p>Style性質是用來改變畫筆的型式,在C++ Builder中定義了以下幾種畫筆型式。它們都以ps為啟始字串
(ps代表Pen Style)。</p>
<p> </p>
<p>psClear 清除線</p>
<p>psDash Dash線</p>
<p>psDashDot Dash和Dot交替線</p>
<p>psDashDotDot Dash和一堆Dot線</p>
<p>psSolid 實心線</p>
</font>
<p><font SIZE="2"><img SRC="Image5.gif" WIDTH="445" HEIGHT="307">圖05</font></p>
<font SIZE="2">
<p align="right"><!--webbot bot="ImageMap" rectangle=" (40,1) (71, 23) chap27.htm" rectangle=" (0,0) (32, 22) chap25.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="chap27.htm"><AREA SHAPE="RECT" COORDS="0, 0, 32, 22" HREF="chap25.htm"></MAP><a href="../../../_vti_bin/shtml.exe/program/C++/ch2/chap26.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="41860" --></p>
<p><small><a href="../../../index.htm">首頁</a> >> <a href="../../program.htm">程序設計</a>
>> <a href="../cbuilder.htm">C++ Builder</a> >> </small>圖形程式設計基本觀念·繪圖工具</p>
</font>
</body>
</html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -