2011-12-13 54 views
2

嗨我想弄清楚如何在窗体上绘制时改变椭圆的颜色。我的代码如下。绘制椭圆时更改颜色属性?

procedure TForm3.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); 
begin 
    if ssalt in shift then 
    form3.canvas.Ellipse(x-10,y-10,x+10,y+10) 
    else 
    if ssCtrl in shift then 
     form3.canvas.Ellipse(x-10,y-10,x+10,y+10);  
end; 

我知道椭圆使用T形组件时有brush.style属性,但我似乎无法弄清楚如何去改变它用于此目的。

回答

2
  1. 内部的颜色由Canvas.Brush.Color决定。
  2. 周长将以Canvas.Pen.Color指定的颜色绘制。

您还需要确保设置Canvas.Brush.Style正确设置,例如到bsSolid,同样对于Canvas.Pen.Style,例如, psSolid

TCanvas.Ellipse文档状态这样的:

椭圆使用钢笔的价值概括,并用画笔的价值填补。