![]() |
TStringGrid, MakeVisible-Ersatz
Hallo #,
ich suche sowas wie MakeVisible für TStringGrid. TopRow möchte ich nicht nehmen. Ist die gewünschte Zeile aktuell sichtbar im Grid, reicht ein Grid.Row. Ist sie nicht sichtbar, sollte halt gescrollt werden, so dass sie als letzte Zeile sichtbar wird. Hat das jemand schon mal gemacht ? Danke Heiko |
AW: TStringGrid, MakeVisible-Ersatz
Hallo,
so ganz ohne TopRow wird es nicht gehen, aber Du siehst es ja nicht, ist in der Prozedur versteckt :wink:
Delphi-Quellcode:
procedure MakeVisible(SG: TStringGrid; Row: Integer);
var i, x, TargetRow: Integer; begin if Row > Pred(SG.RowCount) then TargetRow := Pred(SG.RowCount) else if Row < 0 then TargetRow := 0 else TargetRow := Row; x := SG.ClientHeight; i := TargetRow; while (i > 0) and (x < SG.RowHeights[i]) do begin dec(x, SG.RowHeights[i]); dec(i); end; if x > SG.RowHeights[0] then SG.TopRow := 0 else SG.TopRow := i; SG.Row := TargetRow; end; |
AW: TStringGrid, MakeVisible-Ersatz
Hallo,
wau, der Code sieht schick aus !!! (und klappt sogar perfekt ;) Danke Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:30 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