为什么我的Delphi TCanvas.DrawLine在Android上运行时不会出现

时间:2013-11-06 12:43:14

标签: android delphi firemonkey delphi-xe5

我有一个非常简单的FireMonkey应用程序,其中包含单个表单和OnPaint事件中的以下代码。当我使用Windows目标运行它时,我看到一条红线和一个红色方块。当我在Android Nexus 7上运行时,只显示正方形。我必须做些傻事,但它可能是什么?

感谢您的帮助。

procedure TForm2.FormPaint(Sender: TObject; Canvas: TCanvas;
  const ARect: TRectF);
begin
    Canvas.Stroke.Color := claRed;
    Canvas.Fill.Color := claRed;

    Canvas.Stroke.Thickness := 3;

    Canvas.DrawLine( PointF( 0, 0 ), PointF( 200, 200 ), 1.0 );

    Canvas.FillRect( RectF( 300, 300, 500, 500 ), 0.0, 0.0, [], 1.0  );
end;

1 个答案:

答案 0 :(得分:9)

我发现Android下的Canvas.Stroke.Kind初始化为bkNone(第0个序号),因此没有输出。

在获得输出之前,您需要包含Canvas.Stroke.Kind := TBrushKind.bkSolid