資源描述:
《delphi canvas的屬性大全》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、在寫畫(huà)圖軟件必然少不了canvas,可是像我們這樣的剛步入程序開(kāi)發(fā)的人們,哪有都懂的,只做一點(diǎn)學(xué)一點(diǎn)了。下面是Canvas的相關(guān)屬性。在Delphi中,專門定義了一組用于繪制圖形的對(duì)象和組件,完成一些簡(jiǎn)單的圖像功能。利用這些對(duì)象、組件的方法,可以方便地繪制各種常用圖形;通過(guò)設(shè)置它們的屬性,能得到不同風(fēng)格的圖形。另外,通過(guò)對(duì)鼠標(biāo)事件的定義,可以方便設(shè)計(jì)圖形繪制程序。(1)TCanvas,TPen,TBrush,TColor對(duì)象的方法及屬性;(2)繪圖功能的實(shí)現(xiàn);(3)TImage,TPicture,TBitBtn,TBitmap組件的方法及屬性;(4)圖像
2、觀測(cè)及處理。4.4.1TCanvas——畫(huà)布對(duì)象TCanvas對(duì)象是一個(gè)用于繪圖的組件,Delphi利用這個(gè)組件為用戶提供了一個(gè)繪制圖形的區(qū)域,在這個(gè)區(qū)域上,程序可實(shí)現(xiàn)各種繪圖功能,很多組件(如TImage、TMemo)的Canvas屬性就是TCanvas對(duì)象。在組件上繪制圖形就是在組件的畫(huà)布上繪制。TCanvas的Brush、Pen、Font屬性分別是TBrush、TPen、TFont對(duì)象,它們用于定義繪制圖形的風(fēng)格。關(guān)于TBrush、TPen對(duì)象,后面將詳細(xì)介紹。需要說(shuō)明的是,Delphi中利用前綴T來(lái)標(biāo)志內(nèi)部定義的對(duì)象,例如TPen代表畫(huà)筆對(duì)象,T
3、Form則代表窗體對(duì)象等。畫(huà)布的筆的位置定義在PenPos屬性中,可用MoveTo方法來(lái)移動(dòng)筆。如果要在畫(huà)布上輸出文本,可用Textout方法。TCanvas對(duì)象有很多方法,可完成常用的繪圖功能。TCanvas對(duì)象的方法方法說(shuō)明ArcArc(x1,y1,x2,y2,x3,y3,x4,y4:Integer);Arc方法在橢圓上畫(huà)一段弧,橢圓由(x1,y1)、(x2,y2)兩點(diǎn)所確定的橢圓決定。弧的起點(diǎn)是橢圓圓周和橢圓中心與(x3,y3)連線的交點(diǎn)?;【匦谓K點(diǎn)是橢圓圓周和橢圓中心與(x4,y4)連線的交點(diǎn)以逆時(shí)針?lè)较虍?huà)弧ChordChord(x1,y1,x2
4、,yx,x3,y3,x4,y4:Integer);Chord方法連接橢圓上兩點(diǎn),橢圓由(x1,y1)、(x2,y3)兩點(diǎn)所確定的矩形決定,(x3,y3)是始點(diǎn),(x4,y4)是終點(diǎn)BrushcopyBrushcopy(constDest:TRect;Bitmap:TBitmap;constSourceTRect;Color:TColor);Brushcopy方法把位圖的一部分復(fù)制到畫(huà)布的某個(gè)矩形區(qū)域,并用畫(huà)筆的當(dāng)前顏色替換位圖的顏色。參數(shù)Dest定義畫(huà)布的一個(gè)矩形區(qū)域,該矩形用以填充位圖,Bitmap定義位圖;Source定義位圖中的矩形區(qū)域,該區(qū)域上的
5、位圖將被復(fù)制;Color定義畫(huà)筆中用以替換位圖的顏色CopyRectCopyRect(Dest:TRect;Canvas:TCanvas;SourceTRect);此方法從另一個(gè)畫(huà)布對(duì)象上復(fù)制部分圖像到該畫(huà)布。Canvas表示源畫(huà)布,Source是源畫(huà)布上要復(fù)制的圖像區(qū)域。Dest表示目標(biāo)畫(huà)布上將接受復(fù)制圖像的矩形區(qū)域方法說(shuō)明DrawDraw(x,y:Integer;Graphic:TGraphic);此方法在畫(huà)布給定的像素點(diǎn)坐標(biāo)(x,y)處畫(huà)Graphic所給的圖像,該圖像可以是位圖、圖標(biāo)或元位圖EllipsEllips(x1,y1,x2,y2:Int
6、eger);Ellips方法在畫(huà)布指定的矩形邊界上畫(huà)一個(gè)橢圓,(x1,y1)是矩形左上角的像素坐標(biāo),(x2,y2)是矩形右下角的像素坐標(biāo)。如果矩形形成一個(gè)區(qū)域,則將出現(xiàn)一個(gè)橢圓LineToLineTo(x,y:Integer);LineTo從當(dāng)前位置畫(huà)一條線至(x,y)所指定的位置,并把筆的位置移至(x,y)MoveToMoveTo(x,y:Integer);MoveTo將筆的當(dāng)前位置設(shè)置到點(diǎn)(x,y)處,筆的當(dāng)前位置在PenPos屬性中,改變筆的當(dāng)前位置使用MoveTo方法,不要設(shè)法改變PenPos的值DieDie(x1,y1,x2,y2,x3,y3,
7、x4,y4:Longint);Die方法繪制橢圓的一部分,橢圓由點(diǎn)(x1,y1),(x2,y2)所確定的矩形所決定,繪制的那部分由橢圓中心到(x3,y3)、(x4,y4)兩點(diǎn)的兩條輻射線所決定PolygonPolygon(Points:arrayofTPrint);Polygon方法在畫(huà)布上繪制一系列的點(diǎn),各點(diǎn)依次連成線,最后將首尾兩點(diǎn)相接形成一個(gè)區(qū)域,并用當(dāng)前筆刷填充此區(qū)域PolylinePolyline(Ports:arrayofTPort);Polyline方法在畫(huà)布上用當(dāng)前畫(huà)筆繪制一系列的點(diǎn),各點(diǎn)依次連成線StretchDrawStretchDr
8、aw(ConstRect:TRcct:Graphic:TGraphic);此方法