Man könnte versuchen, die Fehler-Ursache einzugrenzen:
Delphi-Quellcode:
Procedure TfrmMain.Zeige(Sender: TObject);
var
AForm : TCustomForm;
begin
if Sender is TCustomForm then
begin
AForm := TCustomForm(Sender);
AForm.Canvas.TextOut(X, Y, 'Hallo');
ShowMessage(Format('Ausgabe auf %s.%s %dx%d', [AForm.ClassName, AForm.Name, x, y]));
end
else
ShowMessage(Format('Kein Ausgabe auf %s', [Sender.ClassName]));
end;
€: die Variante mit TForm als Parameter würde ein Cast unnötig machen.