Hallo,
sende doch irgendeine Message (die Du vorher deklariert hast).
Hier mal ein Beispiel (Du brauchst ein Form und einen Button):
Delphi-Quellcode:
const
WM_LOESCHMICH = WM_USER + 123;
// die Message (immer als WM_USER + irgendeine Zahl deklarieren)
type
TForm1 =
class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
procedure LoeschMich(
var Msg: TMessage);
message WM_LOESCHMICH;
// der MessageHandler
public
{ Public-Deklarationen }
end;
implementation
procedure TForm1.Button1Click(Sender: TObject);
begin
PostMessage(
Handle, WM_LOESCHMICH, Integer(Sender), 0);
// an Form senden (Handle), in WParam den Button stecken
end;
procedure TForm1.LoeschMich(
var Msg: TMessage);
begin
TObject(Msg.WParam).Free;
// WParam nach TObject casten und freigeben
end;
Du solltest allerdings in der Messagebehandlungs-Methode noch ein paar Sicherheitschecks einbauen (z. B. überprüfen, dass WParam nicht Null ist).
Gruß
xaromz