Exception abfangen bringt ja nix, weil bei jeder Cursorbewegung im DBGrid könnte die
Exception erneut ausgelöst werden, was zur Folge hat, dass das Grid bestenfalls nur halb angezeigt wird.
Ausserdem müsstest du die
Exception innerhalb der
VCL abfangen und dazu die
VCL verändern.
Nein, du musst die
Exception verhindern.
Im Event [TDataset].AfterOpen alle Felder die nicht interessieren mit
Visible:=False
unsichtbar machen.
Dann zeigt das DBGrid weniger Spalten an und verhält sich ruhig (wenn du Glück hast).