計(jì)算機(jī)二級(jí)DELPHI基礎(chǔ):Tcanvas類的主要屬性

字號(hào):

畫(huà)布是用于繪圖的區(qū)域,以圖形組件(如。Form等)屬性方式供程序員使用。畫(huà)布由點(diǎn)所組成,點(diǎn)的坐標(biāo)系統(tǒng)與屏幕的坐標(biāo)系統(tǒng)是相同的。畫(huà)布Canvas對(duì)象常用屬性有5個(gè):Pen(畫(huà)筆,用于畫(huà)線)、PenPos(畫(huà)筆位置)、Brush(畫(huà)刷,用于填充)、Font(字體,用于寫(xiě)文字)和 Pixels(像素?cái)?shù)組,用于表示圖形)。
    1.Pen屬性
    一方面Pen是Canvas對(duì)象的屬性,另一方面Pen又是TPen類的對(duì)象。Pen對(duì)象確定了畫(huà)線條以及繪制圖形輪廓所用畫(huà)筆的類型,應(yīng)用程序常用 Pen對(duì)象在畫(huà)布上繪制各種線段。Examda提示:可通過(guò)設(shè)置Pen對(duì)象的屬性來(lái)確定顏色、類型、寬度和筆的模式,中國(guó)自學(xué)編程網(wǎng)整理發(fā)布,www.zxbc.cn 。
    ·用Pen對(duì)象的(20lor屬性定義筆的顏色,Color 可以取的值。
    ·用Pen對(duì)象的width屬性定義筆的線段寬度。
    ·用Pen對(duì)象的Style屬性定義筆的線段的各種類型。
    ·用Pen對(duì)象的Mode屬性定義筆的線段的顏色。
    可結(jié)合當(dāng)前的顏色、屏幕顏色或它們的反轉(zhuǎn)值,對(duì)線段的顏色重新定義,但不改變Color屬性。
    2.Brush屬性
    Brush屬性的類型為T(mén)Brush類,本身也是一個(gè)對(duì)象。可通過(guò)設(shè)置Brush對(duì)象的屬性來(lái)確定\"刷子的填充顏色、圖案或位圖。Brush對(duì)象有3個(gè)重要屬性:
    ·Color用于指定刷子的顏色。
    ·Style用于指定刷子的形狀。Style屬性有8個(gè)可能的值。
    ·Bitmap用于指定一個(gè)位圖,這樣就可以指定一個(gè)自定義的圖案為刷子的背景。
    默認(rèn)情況下,刷子顏色為clwhite,樣式為bsSolid,沒(méi)有位圖。可以改變顏色和樣式,以便用不同的圖案來(lái)填充區(qū)域。
    3.Font屬性
    Font屬性的類型為T(mén)Font類,它本身也是一個(gè)對(duì)象??赏ㄟ^(guò)設(shè)置Font對(duì)象的屬性來(lái)確定字體的名稱、顏色、尺寸和風(fēng)格。Canvas.Font屬性使程序可以用win32字體畫(huà)出文字。通過(guò)修改字體的顏色、名稱、大小、高度、樣式,就可以改變寫(xiě)在畫(huà)布上的文字的外觀。Font對(duì)象的屬性如下:
    ·Canvas.Font.Color可以賦值為任何Delphi預(yù)定義的顏色。例如,下面的代碼把字體的顏色設(shè)為紅色,自學(xué)編程網(wǎng)發(fā)布:
    Canvas.Font.Color:=clRed;
    ·Canvas.Font.Name用于指定windows字體名。例如,把字體設(shè)為微軟雅黑的代碼:
    Canvas.Font.Name:=’微軟雅黑’;
    ·Canvas.Font.Size 以磅為單位指定字體的大小。
    ·Canvas.Font.Style是由一種或多種樣式組成的集合,取值和含義如下:
    fsBold(字體加粗)、fAItalic(字體傾斜)、fsUnderline(字體加下劃線)、fsStrikeOut(字體加刪除線)。
    4.PenPos屬性
    .PenPos屬性確定了當(dāng)前畫(huà)筆的位置。例如:
    :forml.Canvas.PenPos::point(100,100);指定筆的位置。
    5.Pixels屬性
    Canvas.Pixels屬性是一個(gè)二維數(shù)組,它的每個(gè)元素代表窗體表面或客戶區(qū)的一個(gè)像素的Color值。通常不需要用到Pixels屬性,用它太慢。
    窗體左上角的像素為:Canvas.Pixels[0,0];
    窗體右下角為:Canvas.Pixels[ClientWidth,ClientHeight]