Lazarus中组件的名称是什么,Delphi中的名称是“Canvas”?

时间:2013-02-23 21:42:02

标签: freepascal lazarus

我想在Lazarus中创建一个绘图应用程序,但是我没有看到适当的控件,我可以将其用作Deplhi中的画布。它叫什么名字?

2 个答案:

答案 0 :(得分:7)

Delphi中没有Canvas组件,但如果您正在寻找可用于应用程序中自定义绘图的组件,那么您正在寻找TPaintBox控件( Delphi中也使用了这个组件的相同名称。在Lazarus中,您可以在组件面板中找到它:

enter image description here

在较新版本的Lazarus IDE中,您可以从组件选择器前进,以按名称查找组件。如果按 CTRL + ALT + P ,您将看到以下窗口,您只需键入控件的名称即可寻找并立即过滤。选择组件后(如果有多个匹配名称)并按 ENTER ,组件将在调色板中选择:

enter image description here

然后,您将为OnPaint组件的TPaintBox事件编写事件处理程序方法,并在组件的Canvas上绘制图形:

procedure TForm1.PaintBox1Paint(Sender: TObject);
begin
  PaintBox1.Canvas.Brush.Color := clGreen;
  PaintBox1.Canvas.FillRect(PaintBox1.ClientRect);
end;

答案 1 :(得分:0)

在大多数情况下,Canvas已在Forms-Applications中定义。所以只需输入“canvas”后跟一个点来查看功能。这适用于Lazarus和Delphi的所有版本。

procedure TForm1.FormShow(Sender: TObject);
begin
  canvas.TextOut(10,10,'Hello World');
end;