Die saubere Lösung wäre eine eigene Komponente von TDBGrid abzuleiten und die Properties LeftCol und FixedCols als readonly sichtbar zu machen.
Die quick&dirty Methode sieht so aus:
Delphi-Quellcode:
var
Idx: Integer; // erster sichtbarer Spaltenindex
begin
Idx := TStringGrid(DBGrid1).LeftCol - TStringGrid(DBGrid1).FixedCols;