![]() |
Fortlaufende Ermittlung der Caret-Position
Hallo zusamen,
Ich habe mir eine kleine Procedure gebastelt um die Caret-Position anzuzeigen.
Delphi-Quellcode:
Sie wird über On Mouseup,und OnKeyup aufgerufen.
procedure Show_LinePos(mm:TMemo;sb:TStatusbar);
var CurrentLine, FirstCharPos, CurrentPos : integer; begin CurrentPos := MM.SelStart; CurrentLine := SendMessage(Mm.Handle,EM_LINEFROMCHAR,-1,0); firstcharpos:=SendMessage(MM.Handle,EM_LINEINDEX,-1,0); sb.Panels[0].Text:=inttostr(CurrentLine+1); sb.Panels[1].Text:=inttostr(Currentpos-FirstCharPos+1); end; Wenn ich allerdings die Cursor-Tasten gedrückt halte, dann tut sich nichts in der Anzeige. (OnKeyPressed habe ich schon versucht) Wie erhalte ich eine Anzeige wenn ich durch den vorhandenen Text durch scrolle? (Bevor es jemandem auffällt WordWrap steht auf false) Gruß K-H |
AW: Fortlaufende Ermittlung der Caret-Position
Tut sich nur nicht wenn du die Pfeiltasten gedrückt hältst oder bekommst du generell im KeyDown/KeyUp keine Benachrichtigung bei Nutzung der Pfeiltasten? Wenn du generell keine Pfeiltasten bekommst solltest du WM_GETDLGCODE verarbeiten.
|
AW: Fortlaufende Ermittlung der Caret-Position
Nur wenn ich die Taste gedrückt halte. Wenn ich sie loslasse "springt" die anzeige auf den richtigen wert.
Gruß K-H |
AW: Fortlaufende Ermittlung der Caret-Position
wie immer den Wald vor lauter Bäumen nicht gesehen.
Wenn man onKeydown nutzt, klappt's auch mit dem scrollen. Gruß K-H |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:21 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