Je veux afficher un menu contextuel lorsque vous cliquez sur un bouton, mais cette procédure comporte une erreur dans Delphi XE.Comment afficher un TPopupMenu lorsque vous cliquez sur un TButton?
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 le bouton cliquez sur Afficher cette erreur:
[Erreur DCC] Form1.pas (205): E2010 types incompatibles: 'HWND' et 'TPoint'
[Erreur DCC] Form1. pas (398): E2197 objet constante ne peut pas être transmis en tant que paramètre var
[erreur CDC] Form1.pas (398): E2197 objet constante ne peut pas être transmis en tant que paramètre var
y at-il meilleure façon f ou afficher le menu contextuel, lorsque vous cliquez sur un bouton?
Pourquoi utilisez-vous les paramètres var pour ShopPopupMenuEx() -procedure? – Vegar
oups, c'est mon erreur, désolé. – User