saludos, no se si te entendí, de todas formas revisa el pequeño codigo que he estado desarrollando para por medio del metodo DBGrid.DataSource.DataSet sacar el valor del campo siguiente al campo en el que estas actualmente, ¿me entiendes no?, entonces, estos codigos van en el evento DrawColumnCell del DBgrid, quedando así:
Código:
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
fIndex: Integer;
begin
fIndex := DBGrid1.DataSource.DataSet.FieldByName(Column.FieldName).Index;
if fIndex < DBGrid1.DataSource.DataSet.FieldCount -1 then
Caption := DBGrid1.DataSource.DataSet.Fields[fIndex + 1].AsString
end;
ahora, esto da un poco de dolor de cabeza, a veces se queda sin mostrar el valor del campo siguiente pero eso ya debe ser problema del evento en el que programes para calcular este valor,
espero que te sirva de algo,
saludos!
aeff!!