procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
Rect:TRect;
begin
if (X>Button1.Width -20) and (Y>Button1.height-20) then
begin
Rect:=Button1.BoundsRect;
MapWindowPoints(Handle,0,Rect,2);
PopupMenu1.Popup(Rect.Left+X,Rect.Top+Y);
end
else
ShowMessage('click');
end;