Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Fortlaufende Ermittlung der Caret-Position (https://www.delphipraxis.net/168473-fortlaufende-ermittlung-der-caret-position.html)

p80286 23. Mai 2012 16:17

Fortlaufende Ermittlung der Caret-Position
 
Hallo zusamen,
Ich habe mir eine kleine Procedure gebastelt um die Caret-Position anzuzeigen.
Delphi-Quellcode:
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;
Sie wird über On Mouseup,und OnKeyup aufgerufen.
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

SirThornberry 23. Mai 2012 16:46

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.

p80286 23. Mai 2012 22:17

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

p80286 25. Mai 2012 15:15

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 14:51 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz