with
kann zu Uneindeutigkeiten führen, da Methoden/Attribute/Properties so mehrfach (aus Klasse/von with) vorhanden sein können und dann die "falsche" verwendet wird
beeser:
Delphi-Quellcode:
procedure TMyControl.Paint;
begin
var c: TCanvas := self.Canvas;
...
c. ...
end;