新しい VCL フォーム アプリケーション ( File->New->VCL Form Application
) で、フォームの中央に をドロップしTButton
、ダブルクリックしてTForm1.Button1Click
イベント ハンドラーを作成し、次のコードを使用します。
procedure TForm1.Button1Click(Sender: TObject);
var
OldBrushColor, OldPenColor: TColor;
begin
// I've enlarged the size of the rectangle (box)
// to 20 x 20 for illustration purposes.
OldBrushColor := Self.Canvas.Brush.Color;
Self.Canvas.Brush.Color := clBlack;
Self.Canvas.Rectangle(10, 10, 30, 30);
Self.Canvas.Brush.Color := OldBrushColor;
Self.Canvas.Ellipse(11, 11, 29, 29);
// Alternative using MoveTo/LineTo and
// changing pen color
OldPenColor := Self.Canvas.Pen.Color;
Self.Canvas.Pen.Color := clRed;
Self.Canvas.MoveTo(30, 10);
Self.Canvas.LineTo(50, 10);
Self.Canvas.MoveTo(50, 10);
Self.Canvas.LineTo(50, 30);
Self.Canvas.MoveTo(50, 30);
Self.Canvas.LineTo(30, 30);
Self.Canvas.MoveTo(30, 30);
Self.Canvas.LineTo(30, 10);
Self.Canvas.Ellipse(31, 11, 49, 29);
Self.Canvas.Pen.Color := OldPenColor;
end;
上記のサンプル:
TCanvas
他の描画方法 ( Arc
、Chord
、および と の組み合わせなど)MoveTo
をLineTo
ドキュメントで見つけることができます(リンクは XE4 のドキュメント用ですが、Delphi 2006 のドキュメントにも情報が含まれているはずです)。