![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как PopupMenu показать прямо под Edit ом? [Win2k]
JC © (2002-06-27 16:31:00)^ ^ ^ ^ ^
Volj (2002-06-27 17:41:00) [1]Координаты: ScreenToClient и ClientToScreen
JC (2002-06-27 17:10:00) [2]Fiend
> У попа есть метод Popup(x,y).
> вот и вызови его с координатами, где нада сам подвычислиш
> координаты
О Popup я знаю, а вот с координатами труднее, они же относительно Desktop"а!!!
Игорь Шевченко, спасибо!
JC (2002-06-27 17:10:00) [3]Fiend
> У попа есть метод Popup(x,y).
> вот и вызови его с координатами, где нада сам подвычислиш
> координаты
О Popup я знаю, а вот с координатами труднее, они же относительно Desktop"а!!!
Игорь Шевченко, спасибо!
Игорь Шевченко (2002-06-27 16:48:00) [4]TPopupMenu.Popup
Displays the pop-up menu onscreen.
procedure Popup(X, Y: Integer); virtual;
Description
Call Popup to bring up the pop-up menu. The menu appears at the screen coordinates indicated by the values (in pixels) of X and Y.
Х и Y - устанавливаются в координаты левого нижнего угла Edit.
procedure TForm1.Edit1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
P : TPoint;
begin
if ssRight in Shift then begin
P := Edit1.Parent.ClientToScreen (Point(Edit1.Left, Edit1.Top + Edit1.Height));
PopupMenu1.Popup (P.X, P.Y) end;
end;
end.
У PopupMenu1 свойство AutoPopup установлено в false
Fiend (2002-06-27 16:46:00) [5]У попа есть метод Popup(x,y).
вот и вызови его с координатами, где нада сам подвычислиш координаты