![]() |
Cursor mit Rechtsklick setzen in Memo
Hi, ich versuche gerade den Cursor in einem Memo Feld zusätzlich mit der rechten Maustaste setzen zu lassen. Es klappt aber nicht wirklich ....
Delphi-Quellcode:
GetCaretPos liefert was falsches. Kann man das umrechnen ?
procedure TForm1.Memo1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer); var p2: TPoint; begin if Button = mbRight then begin GetCaretPos(p2); Memo1.CaretPos := p2; end; end; Oder geht das so garnicht ? |
AW: Cursor mit Rechtsklick setzen in Memo
Delphi-Quellcode:
procedure TForm1.Memo1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer); var p2: TPoint; begin if Button = mbRight then begin GetCaretPos(p2); Memo1.CaretPos := Memo1.ClientToScreen(p2); end; end; |
AW: Cursor mit Rechtsklick setzen in Memo
Hi danke für die Antwort, klappt bei mir leider nicht.
Ich habe aber gerade eine Lösung gefunden:
Delphi-Quellcode:
Ansatz:
procedure TForm1.Memo1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer); begin if Button = mbRight then Memo1.SelStart := LoWord(SendMessage(Memo1.Handle, EM_CHARFROMPOS, 0, MakeLParam(X, Y))); end; ![]() Interessant fände ich aber trotzdem wenn man es auch auf obige weise lösen könnte, ohne das man hier ein Handle braucht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz