Eine andere Möglichkeit:
Delphi-Quellcode:
const
WM_FREEOBJECT = WM_USER + 1;
type
TForm1 =
class(TForm)
...
protected
procedure WMFreeObject(
var Msg: TMessage);
message WM_FREEOBJECT;
end;
procedure TForm1.WMFreeObject(
var Msg: TMessage);
message WM_FREEOBJECT;
begin
TObject(Msg.LParam).Free;
end;
proedure TForm1.Button1Click(Sender: TObject);
begin
PostMessage(
Handle, WM_FREEOBJECT, 0, Integer(Sender));
end;
Das geht etwas flotter als mit einem Timer.