![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Где кликнули правой кнопкой мыши вызывая попап меню?
Германн © (2014-10-14 02:19:00)<offtop>
Блин, как трудно возвращаться к старому ремеслу.
</offtop>
Нужно показать некую форму в том месте, где была нажата правая кнопка мыши, которая вызвала всплывающее меню, в котором выбрали некий пункт. Что-то не могу найти стандартное/простое решение.
DQ (2014-10-15 04:36:00) [1]"Mouse.CursorPos." по сути тоже самое, только не на WinAPI, а обёртка VCL.
Германн (2014-10-15 02:28:00) [2]
> NoUser © (14.10.14 02:41) [1]
GetCursorPos в OnPopup помогло.
ScreenToClient в моём случае лишнее.
Германн (2014-10-14 02:53:00) [3]Спасибо. Попробую.
DQ (2014-10-14 02:47:00) [4]
procedure TMain.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
subFormX:=Mouse.CursorPos.X;
subFormY:=Mouse.CursorPos.Y;
popUp.Popup(subFormX, subFormY);
end;
procedure TMain.popUpB1Click(Sender: TObject);
begin
subForm.Left:=subFormX;
subForm.Top:=subFormY;
subForm.ShowModal();
end;
..?
NoUser (2014-10-14 02:41:00) [5]
var
SavePopPos:TPoint;
procedure TForm1.PopupMenu1Popup(Sender: TObject);
begin
GetCursorPos(SavePopPos);
SavePopPos := ScreenToClient(SavePopPos)
end;