Hi,
Du kannst die PopUp Methode des PopupMenus aufrufen, um
das Popupmenu anzuzeigen.
Der 1. Parameter ist die X-Koordinate, welcher du die X-Koordinate der
aktuellen Mausposition übergibst.
Der 2. Parameter die Y-Koordinate, welcher du die Y-Koordinate der
aktuellen Mausposition plus des Höhe PopupMenus übergibst.
Das Problem ist, wie die Höhe des PopupMenus zu bestimmen.
(GetWindowRect funktioniert nicht!)
Der Code mal soweit:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var P: TPoint; begin if Button = mbRight then begin P:=(Sender as TButton).ClientToScreen(Point(X,Y)); PopupMenu1.PopUp(P.X ,P.Y); end; end; |