Registriert seit: 18. Feb 2005
286 Beiträge
Delphi 2010 Enterprise
|
Re: Richedit - Fokus auf letzte Zeilen halten(inaktives Fens
15. Mär 2010, 11:13
Delphi-Quellcode:
*.Perform(EM_SCROLL, SB_LINEDOWN, 0); // bei konstant einer Zeile
*.Perform(EM_LINESCROLL, 0, Offset); // mit Variable
Wenn das Steuerelement umgebrochene Zeilen enthält, ist eine Zeile zu wenig. Dann besser so:
Delphi-Quellcode:
var
TopLineIndex: Integer;
ScrollPos: Integer;
PageSize: Integer;
begin
PageSize := 14; // Anzahl sichtbare Zeilen
ScrollPos := *.Lines.Count - PageSize;
// erste sichtbare Zeile so justieren, dass die letzte Zeile sichbar ist
TopLineIndex := *.Perform(EM_GETFIRSTVISIBLELINE, 0, 0);
*.Perform(EM_LINESCROLL, 0, ScrollPos - TopLineIndex);
end;
"Es gibt keine schlimmere Lüge als die Wahrheit, die von denen, die sie hören, missverstanden wird."
|