Il y a tout ce qu'il faut dans la VCL, voici un exemple (volontairement détaillé) :


procedure TForm1.miTestClick(Sender: TObject);
var
popup: TPopupMenu;
component: TComponent;
begin
...