Я хочу отображать всплывающее меню при нажатии кнопки, но эта процедура имеет ошибку в 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;
при нажатии кнопки отображается эта ошибка:
[Ошибка DCC] Form1.pas (205): E2010 Несовместимые типы: 'HWND' и 'TPoint'
[Ошибка DCC] Form1.pas (398): E2197 Объект константы не может быть передан как параметр var
[Ошибка DCC] Form1.pas (398): E2197 Объект-константа не может быть передан в качестве параметра var
Есть ли лучший способ показать всплывающее меню при нажатии кнопки?