Bjr à tous et merci pour votre aide quant à mes démêlés avec le dessin sur FMX Android. J'arrive enfin à mes souhaits:

Nom : ghtopodroid_2.png
Affichages : 155
Taille : 1,30 Mo

Maintenant, mon projet comporte un outil à main levée et lorsqu'il est activé, je désire que la trace de mon doigt / souris apparaisse sur ma vue, qui est un TPanel

Dans le OnMouseMove:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
 
procedure TTabbedForm.pnlPlanMouseMove(Sender: TObject; Shift: TShiftState; X,  Y: Single);
var
  NewPos: TPoint2Df;
  MousePos: TPointF;
begin
  if (not FDocTopoOpenedAndReady) then exit;
  case FModeTravailVuePlan of
    mtpREADY           : pass;
    mtpNEW_ANNOTATION  : pass;
    mtpNEW_POLYLINE    : pass;
    mtpDRAWING_POLYLINE:
    begin
      MousePos.X := X;
      MousePos.Y := Y;
      pnlPlan.Canvas.DrawLine(FMousePos .X, FMousePos .Y, MousePos.X, MousePos.Y, 1); // /!\ L'opacité est définie sur [0.0; 1.0] et non [0; 255]
      FMousePos := MousePos; // sauvegarde de la position actuelle de la souris
    end;
    mtpDELETE_POLYLINE  : pass;
    mtpDELETE_ANNOTATION: pass;
  else
    pass;
  end;
end;
Dois-je créer un TImage temporaire ? Autres méthodes

Quel est le rôle de TCanvas.BeginScene / TCanvas.EndScene puisque mon code de tracé du dessin (événement TPanel.OnPaint) fonctionne sans ?

Trace laissée par la souris après armement du mode 'Dessin à main levée' dans un OnMouseDown:
Nom : mainlevee_1.png
Affichages : 144
Taille : 85,9 Ko

Après désarmement dans un OnMouseUp et redessin:

Nom : mainlevee_2.png
Affichages : 147
Taille : 97,6 Ko

cdlt