📄 chap27.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>性质1</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>图形程式设计基本观念·性质1</p>
<p align="left"><!--webbot bot="ImageMap" rectangle=" (40,1) (71, 23) chap28.htm" rectangle=" (4,1) (36, 23) chap26.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="chap28.htm"><AREA SHAPE="RECT" COORDS="4, 1, 36, 23" HREF="chap26.htm"></MAP><a href="../../../_vti_bin/shtml.exe/program/C++/ch2/chap27.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="23291" --></p>
<p><font color="#FF0000">·性质1</font></p>
<p>04-03 Width性质1</p>
<p>笔的Width顾名思义,就是指笔的粗细,我在前面几个程式都已使用过了,所以在此不再细述。</p>
<p>04-04 Mode性质</p>
<p>Pen的Mode性质是用以决定Pen如何画在Canvas上,下表列出我们可以使用的Mode,它们都以pm为启始字元,代表Pen
Mode。</p>
<p>Mode 点的颜色</p>
<p>pmBlack 恒为黑色</p>
<p>pmWhite 恒为白色.</p>
<p>pmNop 不变色。</p>
<p>pmNot 萤幕的反相色。</p>
<p>pmCopy 使用Color性质的颜色(内定值).</p>
<p>pmNotCopy 使用Color性质的反相色。</p>
<p>pmMergePenNot Color和萤幕反相的 Merge。</p>
<p>pmMaskPenNot Color和萤幕反相的 Mask。</p>
<p>pmMergeNotPen Color反相和萤幕的 Merge。</p>
<p>pmMaskNotPen Color反相和萤幕的 Mask。</p>
<p>pmMerge Color和萤幕的 Merge。</p>
<p>pmNotMerge pmMerget的相反。</p>
<p>pmMask Color和萤幕的 Mask。</p>
<p>pmNotMask pmMask的反相。</p>
<p>pmXor Color和萤幕的Xor运算。</p>
<p>pmNotXor pmXor的相反。</p>
<p>Pen->Mode的预设值是pmCopy,也就是说,它会用Color性质的颜色来画图。在大部份情况下,你会使用这个预设值。不过若你要再针对笔做细部控制时,你就必须对其他Mode有一些初步的了解。</p>
<p>另一个常用的Mode是 pmXor,它是用来让Pen->Color和萤幕颜色做XOR运算,XOR运算最重要的特徵是:和同一个值做两次XOR运算时,会恢复原来的值。</p>
<p>因此我们可以用XOR模式在同一位置画两次线,将原来的线擦掉。在本书的绘图范例中就使用pmXor来处理滑鼠的画线,用以将上次的线条清除掉。同时XOR运算也是一种最简单的编码演算法,不过这不在本书讨论范围内,因此我就不再多说了。</p>
<p>05 TCanvas的TBrush性质</p>
<p>TBrush可用来在Canvas的特定区域下着色。和TPen不同的是,TBrush可以用不同的颜色、样式、及图案来填满Canvas的特定区域,而TPen则是用来在Canvas上绘线。</p>
<p>04-01 Style性质</p>
<p>TBrush共有bsSolid, bsClear, bsHorizontal, bsVertical, bsFDiagonal, bsBDiagonal,
bsCross, bsDiagCross等几种 Style,你可以由图XX-06看出这几种不同的笔刷型式有何不同。</p>
</font>
<p><font SIZE="2"><img SRC="Image6.gif" WIDTH="459" HEIGHT="368">图06 </font></p>
<font SIZE="2">
<p align="right"><!--webbot bot="ImageMap" rectangle=" (40,1) (71, 23) chap28.htm" rectangle=" (0,0) (32, 22) chap26.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="chap28.htm"><AREA SHAPE="RECT" COORDS="0, 0, 32, 22" HREF="chap26.htm"></MAP><a href="../../../_vti_bin/shtml.exe/program/C++/ch2/chap27.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="41994" --></p>
<p>·<small><a href="../../../index.htm">首页</a> >> <a href="../../program.htm">程序设计</a>
>> <a href="../cbuilder.htm">C++ Builder</a> >> </small>图形程式设计基本观念·性质1</p>
</font>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -