欢迎来到皮皮网网首页

【李兴华android源码】【招生平台源码】【socket 反向代理 源码】delphi 画布 源码_delphi画图

来源:菠菜源码商城交易平台源码 时间:2024-12-24 04:25:22

1.delphi中canvas在哪
2.delphi画图

delphi 画布 源码_delphi画图

delphi中canvas在哪

       æ¯ä¸€ä¸ªçª—体中菜单之下的整个窗体都是canvas(画布)。

unit Unit1;

       interface

       uses

         Windows,画布画图李兴华android源码 Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

         Dialogs, StdCtrls;

       type

         TForm1 = class(TForm)

           Button1: TButton;

           procedure Button1Click(Sender: TObject);

         private

           {  Private declarations }

         public

           {  Public declarations }

         end;

       var

         Form1: TForm1;

       implementation

       { $R *.dfm}

       procedure TForm1.Button1Click(Sender: TObject);

       begin

            canvas.LineTo(0,);

            canvas.LineTo(,);

            canvas.LineTo(,0);

       end;

       end.

delphi画图

       procedure TForm1.Button1Click(Sender: TObject);

       begin

        Form1.Canvas.MoveTo(,);

        Form1.Canvas.LineTo(,);//从(,)画线到(,)

        Form1.Canvas.Ellipse(, , , );//画圆

        Form1.Canvas.Pixels[,] := clRed;//把(,)点显示红色

        Form1.Canvas.TextOut(,,'写文字');

       end;

       å¦å¤–çš„Delphi中关于Canvas.TextOut的一点资料

       Canvas.Font.Color:=clblue;//字体颜色

       //Canvas.Brush.Color:=clred;//底色

       Canvas.Brush.Style := bsClear;//透明

       canvas.textout(0,0,'avalokita');

       æ‹‰ä¸¤ä¸ª TImage

       procedure TfrmMain.FormCreate(Sender: TObject);

       begin

       Image1.Canvas.Brush.Color := clBlack;

       Image1.Canvas.FillRect(Image1.ClientRect);

       Image1.Canvas.Font.Color := clRed;

       Image1.Canvas.Font.Name := 'Times New Roman';

       Image1.Canvas.Font.Size := ;

       Image1.Canvas.TextOut(9, , 'Delphi');

       end;

       // 水平转

       procedure TfrmMain.Button1Click(Sender: TObject);

       var

       i: integer;

       begin

       for i := 1 to Image1.Width do

       BitBlt(Image2.Canvas.Handle, i, 0, 1, Image2.Height,

       Image1.Canvas.Handle, Image1.Width - i, 0, SRCCOPY);

       Image2.Refresh;

       end;

       // 垂直转

       procedure TfrmMain.Button2Click(Sender: TObject);

       var

       i: integer;

       begin

       for i := 1 to Image1.Height do

       BitBlt(Image2.Canvas.Handle, 0, i, Image2.Width, 1,

       Image1.Canvas.Handle, 0, Image1.Height - i, SRCCOPY);

       Image2.Refresh;

       end;

       ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼ï¼

       1.具有CANVAS属性的控件:

       TBitmap,TComboBox,TDBComboBox,TDBGrid,TDBListBox,TDirectoryListBox,

       TDrawGrid,TFileListBox,TForm,THeaderControl,TImage,TListBox,TOutline,

       TPaintBox,TPrinter,TStatusBar,TStringGrid等,

       2.CANVAS属性及命令:篇幅所限,省略参数及格式说明,具体请参考文后程序及DELPHI帮助文件:

       canvas.rectangle():画矩形pen.color:定义画笔颜色

       roundrect():画圆角矩形pen.width:定义画笔宽度

       arc():画弧线(不填充) brush.color:定义填充颜色

       chord():画弧线(填充) textout():在固定位置输出字符串

       pie:画扇形 textwidth:取字符串高度

       polygon():画多边形填充textheight:取字符串宽度

       polyline():多点联机(不填充)font.color:指定字体颜色

       Pixels():指定固定象素点颜色值font.size:指定字体大小

       moveto():指明画线起点 Ellipse():画圆或椭圆

       lineto():指明画线终点

       3.使用CANVAS注意事项:当窗口进行重画时,画布上的图像将消失,比如当窗口进行最小化又重新恢复时,就会引起画布上图像的消失,另外当刚刚运行程序时,窗口也是属于重新绘制,所以如果在绘制窗口之前在画布上绘图,弹出窗口后将不能显示出图像,比如在TForm1.FormCreate()事件中进行画布绘图操作将是徒劳的,但可以在此事件中进行画布操作的准备工作,比如设置画笔的颜色和宽度等。

       procedure TForm1.SpeedButton5MouseMove(Sender: TObject; Shift: TShiftState;

       X, Y: Integer);

       begin

       if Sender is Tspeedbutton then

       begin

        statusbar1.canvas.Brush.Color:=clwhite;

        statusbar1.canvas.fillRect(statusbar1.Canvas.ClipRect);//清空画布

        statusbar1.Panels[0].Style:=psOwnerDraw;

        statusbar1.Canvas.font.Color:=clred;//字体颜色

        statusbar1.Canvas.Brush.Color:=clblue;//底色

        statusbar1.Canvas.brush.style:=bsclear; //透明

        statusbar1.Canvas.TextOut(0,5,'This is sample'); //定位x,y坐标轴及输入文字

       end;

       end;

       Canvas.Brush.Style:=bsclear 可以去掉字体的背景