Firemonkey: Image.Bitmap.DrawLine не отображается на iPad - PullRequest
0 голосов
/ 07 января 2012

Я создаю приложение в DelphiXE2 firemonkey для IOS.Если я тестировал на Mac в Xcode IPAD Simulator, я видел кнопку.Но когда я нажимаю на кнопку, ни одна строка не видна.Почему?

код: (на форме кнопка и изображение)

unit Unit3;

interface

uses
  SysUtils, Types, UITypes, Classes, Variants, FMX_Types, FMX_Controls, FMX_Forms,
  FMX_Dialogs, FMX_Objects;

type
  TForm3 = class(TForm)
    Image1: TImage;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form3: TForm3;

implementation

{$R *.lfm}

procedure TForm3.Button1Click(Sender: TObject);
var pt0,pt1 : TPointF;
begin
  pt0.Create(0,0);
  pt1.Create(200,200);
  with Image1.Bitmap do begin
    Canvas.Stroke.Color := $ffff0000 ;  // Red
    Canvas.BeginScene;

    Canvas.DrawLine(pt0,pt1,1);
    BitmapChanged;  // without this, no output
    Canvas.EndScene;
  end;

end;


procedure TForm3.FormCreate(Sender: TObject);
begin
  Image1.Bitmap := TBitmap.Create(200,200);
end;
end.

Ответы [ 2 ]

1 голос
/ 25 сентября 2013

Попробуйте это

  pt0.X:=X;
  pt0.Y:=Y;
  pt1.X:=X+4;
  pt1.Y:=Y+4;
  with Image1.Bitmap do begin
    Canvas.Stroke.Color := $ffff0000 ;  // Red
    Canvas.Stroke.Kind := TBrushKind.bkSolid;
    Canvas.StrokeThickness:= 10;
    Canvas.BeginScene;
    Canvas.DrawLine(pt0,pt1,100);
    Canvas.EndScene;
  end;
1 голос
/ 09 января 2012

Я думаю, что это должно быть:

pt0 := TPointF.Create(0, 0);
...