Moin,
eben schnell zusammengetippt und kompiliert, da tut's soweit. Es kann sein, dass du das noch etwas anpassen musst:
Delphi-Quellcode:
procedure TForm1.Memo1Change(Sender: TObject);
var
CaretPos: TPoint;
begin
GetCaretPos(CaretPos);
with Sender as TMemo do
CaretPos := ClientToParent(CaretPos);
with ListBox1 do
begin
Left := CaretPos.X + 3;
Top := CaretPos.Y - Memo1.Font.Height + 3;
end;
end;