Delphi 绘图TCanvas类[1] 的成员 及参数介绍

Delphi 绘图TCanvas类[1] 的成员 及参数介绍

Delphi 绘图TCanvas类[1] 的成员 及参数介绍

1、过程:

Arc //绘制弧线 例如:Canvas.Arc(左边,上边,宽度,高度,宽度,开始坐标点,宽度,终止坐标点 );

BrushCopy //画刷复制 原型:Canvas.BrushCopy(目标区域,Bitmap图,原资源区域; 画刷颜色);

Chord //绘制弦 例如:Canvas.Chord(左边,上边,宽度,高度,宽度,开始坐标点,宽度,终止坐标点 );

CopyRect //复制区域 例如:Canvas.CopyRect(目标区域,画布,原区域) 即例如:A.Canvas.CopyRect(A目标区域,B画布,B原区域) 即A区域复制B区域的图像

Draw //绘制 原型:TCanvas.Draw(X, Y: Integer; Graphic: TGraphic);

DrawFocusRect //绘制焦点矩形(周边虚线) 例如:Canvas.DrawFocusRect(左边, 上边, 宽度, 高度);

Ellipse //绘制椭圆 例如:Canvas.Ellipse(左边, 上边, 宽度, 高度);

FillRect //填充指定区域 原型:TCanvas.FillRect(const Rect: TRect);

FloodFill //洪水填充、批量填充 原型:TCanvas.FloodFill(X, Y: Integer; Color: TColor;FillStyle: TFillStyle);

FrameRect //绘制矩形描边(白色) 例如:Canvas.FrameRect(左边, 上边, 宽度, 高度);

LineTo //在画布上从PenPos到X和Y指定的点绘制一条线,并将笔位置设置为(X,Y),相当于设置终点坐标. 原型:TCanvas.LineTo(X, Y: Integer);

Lock

MoveTo //将当前图形位置更改为点(X,Y),相当于 设置起点坐标. 原型:TCanvas.MoveTo(X, Y: Integer);

Pie //绘制扇形 例如:Canvas.Pie(左边,上边,宽度,高度,宽度,开始坐标点,宽度,终止坐标点 );

Polygon //绘制多边形(含内部) 参数是一个点数组 例如:const Pst: array[0..3] of TPoint = ( (x:10; y:10), (x:20; y:100), (x:80; y:40),(x:40; y:10) ); Canvas.Polygon(Pst);

Polyline //绘制多边形(线)参数是一个点数组 ,同上

PolyBezier //绘制多点线

PolyBezierTo //绘制多点线

Rectangle //绘制矩形 例如: Canvas.Rectangle(左边, 上边, 宽度, 高度);

Refresh

RoundRect //绘制圆角矩形 例如:Canvas.RoundRect(左边, 上边, 宽度, 高度, 20,20); //参数20 是圆角值

StretchDraw //拉申 + 绘制 原型:TCanvas.StretchDraw(const Rect: TRect; Graphic: TGraphic);

TextOut //文本输出 例如:Canvas.TextOut(x, y, 文本内容); //x y 为坐标

TextRect //以画布形式在指定区域输出文本 例如:var R:TRect= (Left:0;Top:0;Right:50;Bottom:50); Canvas.TextRect(R, 10, 10, 文本);

Unlock

示例1:(绘制一条红色的直线)

//绘制一条直线

Canvas.Pen.Color := clRed; {设置画笔颜色}

Canvas.Pen.Width := 3; {设置画笔宽度}

Canvas.MoveTo(5,10); {设置起点坐标}

Canvas.LineTo(5,100); {设置终点坐标}

示例2:(在移动鼠标时从窗体的左上角到鼠标位置绘制一条线,“橡皮筋”效果)

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

begin

//调用FillRect来绘制窗体的表面,相当于删除之前绘制的任何线条

Canvas.FillRect(ClientRect);

Canvas.MoveTo(0, 0);

Canvas.LineTo(X, Y);

end;

2、函数:

HandleAllocated

TextExtent //Canvas.TextExtent(文本) 同时获取字体的高度与宽度, 返回 TSize 结构 .cx宽度 .cy高度

TextHeight //以画布 输出 文本的高度(实际像素) 例如:Canvas.TextHeight(文本内容)

TextWidth //以画布 输出 文本的宽度(实际像素) 例如:Canvas.TextWidth(文本内容)

TryLock

3、属性:

ClipRect //剪切区域

Handle //句柄

LockCount

CanvasOrientation //旋转度

PenPos

Pixels //像素

TextFlags

Brush //画刷 ,参数:颜色

CopyMode

Font

Pen //画笔 , 参数:笔色、笔宽

4、事件

OnChange

OnChanging

创建时间:2020.02.01 更新时间: 2020.02.11、2022.04.12

来源:https://www.cnblogs.com/guorongtao/p/12249986.html

相关推荐

【科普100秒】为什么电视机都是方形的?不能做成别的形状吗?真相没那么简单
梦见蝈蝈
365bet有手机版吗

梦见蝈蝈

07-21 👁️‍🗨️ 2839
环保釭灯: 取光藏烟 致巧金铜(中华智汇·古代顶级灯具系列之三)
香港电台网站 : 电视
365bet有手机版吗

香港电台网站 : 电视

07-13 👁️‍🗨️ 1600
象塔影院4.6电视版下载-象塔影院最新版TV下载
bte365体育

象塔影院4.6电视版下载-象塔影院最新版TV下载

07-06 👁️‍🗨️ 5552
5种儿时常见的辣条,5毛钱一袋,网友:都吃过,暴露年龄!
王者荣耀:盾山最怕遇到5位英雄,钟馗钩子都没有他被动凶!
4-1,双杀巴西!阿根廷狂欢:晋级世界杯,全球第4支出线队
有哪些高大上的安卓 APP 值得推荐
365bet在线开户

有哪些高大上的安卓 APP 值得推荐

07-23 👁️‍🗨️ 3561