>>54
TPopupList型のPopupListという、グローバル変数がある。

↓こんなクラスを作って、
type
 TMyPopupList = class(TPopupList)
 protected
  procedure WndProc(var m: TMessage); override;
 end;

プロジェクトソースを書き換えて、
 Application.Initialize;
 PopupList.Free;
 PopupList := TMyPopupList.Create;
 Application.CreateForm(TForm1, Form1);

とすれば、TMyPopupList.WndProcで、TPopupMenuの
WM_ENTERMENULOOPやWM_EXITMENULOOPを拾えるもより。