Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Uwe Raabe,
25. Feb 2022
Doch, zumindest aktuell, ist aber einfacher und leichter irgendwann mal zu ändern.
Eventuell auf ClipRect ausweichen.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Uwe Raabe,
25. Feb 2022
Der ist schon mit BeginScene und SetMatrix und ClipRect usw. sozusagen vorbehandelt.
ClientWidth gibt es nur beim Form. Bei den anderen Controls entspricht es in der Regel Width.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Uwe Raabe,
25. Feb 2022
Bei FMX musst du außerhalb des OnPaint-Events nach dem BeginScene noch die Matrix des Controls setzen:
procedure TForm1.PaintBox1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single);
begin
var c:= TPaintBox(Sender).Canvas;
if c.BeginScene then begin
c.SetMatrix(TPaintBox(Sender).AbsoluteMatrix);
PaintItem( c, 0 );
PaintItem( c, 4 );
...