|
建立一个自定义控件,该控件在paint事件中绘制一个图形:
- unit CustomShapeControl;
-
- interface
-
- uses
- System.Classes, Vcl.Controls, Vcl.Graphics;
-
- type
- TCustomShapeControl = class(TGraphicControl)
- protected
- procedure Paint; override;
- end;
-
- implementation
-
- procedure TCustomShapeControl.Paint;
- var
- Rect: TRect;
- begin
- Rect := ClientRect; // 获取控件的工作区域
- Canvas.Brush.Color := clBlue; // 设置填充颜色为蓝色
- Canvas.FillRect(Rect); // 使用当前画笔填充矩形
- Canvas.Ellipse(Rect.Left, Rect.Top, Rect.Right, Rect.Bottom); // 绘制圆形
- end;
-
- end.
复制代码- uses
- CustomShapeControl;
-
- procedure TForm1.FormCreate(Sender: TObject);
- var
- CustomControl: TCustomShapeControl;
- begin
- CustomControl := TCustomShapeControl.Create(Self);
- CustomControl.Parent := Self;
- CustomControl.SetBounds(10, 10, 100, 100); // 设置控件的位置和大小
- end;
复制代码
|
|