Comment faire pour afficher une TPopupMenu lorsque vous cliquez sur un TButton?

Je veux montrer un popupmenu lors d'un clic sur un bouton, mais cette procédure a erreur dans Delphi XE.

procedure ShowPopupMenuEx(var mb1:TMouseButton;var X:integer;var Y:integer;var pPopUP:TPopupMenu);
var
  popupPoint : TPoint;
begin
  if (mb1 = mbLeft) then begin
    popupPoint.X := x ;
    popupPoint.Y := y ;
    popupPoint := ClientToScreen(popupPoint);   //Error Here
    pPopUP.Popup(popupPoint.X, popupPoint.Y) ;   
  end;
end;

procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);
begin
  ShowPopupMenuEx(button,Button1.Left,Button1.Top,PopupMenu1); //Error Here
end;

lorsque cliquez sur le bouton afficher ce message d'erreur :

[DCC Erreur] Form1.pas(205): E2010 types Incompatibles: 'HWND" et "TPoint'
[DCC Erreur] Form1.pas(398): E2197 Constante objet ne peut pas être transmis en tant que paramètre var
[DCC Erreur] Form1.pas(398): E2197 Constante objet ne peut pas être transmis en tant que paramètre var

Est-il un meilleur moyen pour montrer popupmenu, lors d'un clic sur un bouton?

Pourquoi utilisez-vous le var-les paramètres de la ShopPopupMenuEx( )-procédure?
oups, c'est mon erreur, désolé.

OriginalL'auteur User | 2010-10-21