procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Single);
begin
if D=1 then
begin
Image2.Position.X:=x;
Image2.Position.Y:=y;
end;
end;
procedure TForm1.Image1Paint(Sender: TObject; Canvas: TCanvas;
const ARect: TRectF);
begin
if D=1 then
begin
p1:=PointF(Image1.Position.X,Image1.Position.Y);
Вопрос
лёля
Неполучеться осущетсвить что-то вроде карандаша чтобы рисовать на Image1 вот код
unit Unit1;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Objects,
FMX.Controls.Presentation, FMX.StdCtrls;
type
TForm1 = class(TForm)
StyleBook1: TStyleBook;
Image1: TImage;
Image2: TImage;
Label1: TLabel;
procedure Image2Click(Sender: TObject);
procedure Image1Paint(Sender: TObject; Canvas: TCanvas;
const ARect: TRectF);
procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Single);
private
{ Private declarations }
public
{ Public declarations }
end;
const
R=80;
var
Form1: TForm1;
D:integer;
PA:TPathData;
p1,p2,p3,p4:TPointF;
implementation
{$R *.fmx}
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Single);
begin
if D=1 then
begin
Image2.Position.X:=x;
Image2.Position.Y:=y;
end;
end;
procedure TForm1.Image1Paint(Sender: TObject; Canvas: TCanvas;
const ARect: TRectF);
begin
if D=1 then
begin
p1:=PointF(Image1.Position.X,Image1.Position.Y);
Pa:=TPathData.Create;
Pa.MoveTo(p1);
Image2.Bitmap.Canvas.BeginScene;
Image2.Bitmap.Canvas.Stroke.Color:=TAlphaColorRec.Green;
Image2.Bitmap.Canvas.Stroke.Thickness:=1;//PenWidth;
Image2.Bitmap.Canvas.DrawPath(Pa,1.0);
Image2.Bitmap.Canvas.EndScene;
Pa.Free;
Image2.Bitmap.Canvas.EndScene;
Image1.Canvas.EndScene;
end;
end;
procedure TForm1.Image2Click(Sender: TObject);
begin
if D=0 then
begin
D:=1;
end
else
begin
D:=0;
end;
end;
end.
Изменено пользователем лёля13 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.