Hola,
Esto es una obviedad, así que no puedo sino pensar que algo se me escapa: me disculpo de antemano contigo, pero, ¿porqué no asignas el PopupMenu a la propiedad correspondiente del formulario y/o componente en cuestión?
En todo caso, y, aunque creo recordar que en algún sitio he visto lo mismo hecho de otro modo (tal vez mejor) puedes probar con esto:
Código Delphi
[-]
procedure TForm.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
PopupMenu.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y);
end;