Можно и посылкой сообщения вызов сделать, не забыв только попапку к форме прикрутить, в смысле Form1.PopupMenu:= PopupMenu1, а дальше
будто бы мыша правой кнопкой отжалась
Код:
sendmessage(Form1.Handle, WM_RBUTTONDOWN, MK_RBUTTON, x + y shl 16);
sendmessage(Form1.Handle, WM_RBUTTONUP, MK_RBUTTON, x + y shl 16);
где x и y - это желаемые координаты показа