Einzelnen Beitrag anzeigen

Perlsau
(Gast)

n/a Beiträge
 
#4

AW: Lazarus TDBGrid Scrol funktion

  Alt 13. Nov 2015, 13:40
Verstehe ich nicht: Genau das passiert doch, wenn du einen Eintrag im DBGrid anwählst – vorausgesetzt, DBGrid und DBEdits hängen am selben DataSource. Sobald eine Datenmenge aktiv ist, existiert auch ein Datensatz-Zeiger. Gewöhnlich zeigt der beim Aktivieren einer Datenmenge auf den ersten Record, also den Record mit der RecNo 1. Was also meinst du genau, wenn du schreibst: "... wenn ich im Grid Scrolle wird sofort der nächste Datensatz geladen." Das ist doch genau das Verhalten, das du hier forderst:

Ich möchte aber das die DBEdits erst geladen werden wenn ich einen Eintrag im DBGrid anwähle.


Das Scrollen im DBGrid entspricht einer Weiterbewegung des Datensatzes. Wenn du ein anderes Verhalten wünschst, dann mußt du auf DBGrid verzichten und StringGrid verwenden. Oder du bastelst dir dein eigenes DBGrid, das beim Scrollen keinen Datensatzwechsel auslöst.

Wenn es dir jedoch lediglich darum geht, unnötigen Traffic zu vermeiden, dann halte die erforderliche Datenmenge im Speicher vor. Gewöhnlich gibt es dafür das Property FetchAll im jeweiligen TQuery oder TDataSet: Damit holst du alle Datensätze auf einmal ab. Voraussetzung ist natürlich, daß du über ausreichend Ram verfügst.
  Mit Zitat antworten Zitat